home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 34 / Amiga Format CD34 (1998-11-20)(Future Publishing)(GB)[!][Christmas issue].iso / -seriously_amiga- / programming / c / mesa-2.6 / include / gl / gl.h next >
C/C++ Source or Header  |  1998-10-01  |  84KB  |  1,831 lines

  1. /*
  2.  * Mesa 3-D graphics library
  3.  * Version:  2.6
  4.  * Copyright (C) 1995-1997  Brian Paul
  5.  *
  6.  * This library is free software; you can redistribute it and/or
  7.  * modify it under the terms of the GNU Library General Public
  8.  * License as published by the Free Software Foundation; either
  9.  * version 2 of the License, or (at your option) any later version.
  10.  *
  11.  * This library is distributed in the hope that it will be useful,
  12.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  14.  * Library General Public License for more details.
  15.  *
  16.  * You should have received a copy of the GNU Library General Public
  17.  * License along with this library; if not, write to the Free
  18.  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  19.  */
  20.  
  21.  
  22. /*
  23.  * gl.h
  24.  *
  25.  * Version 1.0  27 Jun 1998
  26.  * by Jarno van der Linden
  27.  * jarno@kcbbs.gen.nz
  28.  *
  29.  * File created from gl.c ver 1.26 using GenProtos
  30.  *
  31.  * Version 2.0  13 Sep 1998
  32.  * by Jarno van der Linden
  33.  * jarno@kcbbs.gen.nz
  34.  *
  35.  * - Changed to using mesamainBase
  36.  * - Stubs are now #defined so that they pass the
  37.  *   current mesamainBase rather than the global one
  38.  *
  39.  */
  40.  
  41.  
  42. #ifndef GL_H
  43. #define GL_H
  44.  
  45.  
  46. #if defined(USE_MGL_NAMESPACE)
  47. #include "gl_mangle.h"
  48. #endif
  49.  
  50.  
  51. #if defined(__WIN32__) || defined(__CYGWIN32__)
  52. #include <windows.h>
  53. #pragma warning (disable:4273)
  54. #pragma warning( disable : 4244 ) /* '=' : conversion from 'const double ' to 'float ', possible loss of data */
  55. #pragma warning( disable : 4018 ) /* '<' : signed/unsigned mismatch */
  56. #pragma warning( disable : 4305 ) /* '=' : truncation from 'const double ' to 'float ' */
  57. #pragma warning( disable : 4013 ) /* 'function' undefined; assuming extern returning int */
  58. #pragma warning( disable : 4761 ) /* integral size mismatch in argument; conversion supplied */
  59. #pragma warning( disable : 4273 ) /* 'identifier' : inconsistent DLL linkage. dllexport assumed */
  60. #if (MESA_WARNQUIET>1)
  61. #    pragma warning( disable : 4146 ) /* unary minus operator applied to unsigned type, result still unsigned */
  62. #endif
  63. #if defined(_STATIC_MESA) /* for use with static link lib build of Win32 edition only */
  64. #undef APIENTRY
  65. #undef CALLBACK
  66. #undef WINGDIAPI
  67. #define APIENTRY __cdecl
  68. #define CALLBACK __cdecl
  69. #define WINGDIAPI extern
  70. #endif /* _STATIC_MESA support */
  71. #else
  72. #define APIENTRY
  73. #define CALLBACK
  74. #define WINGDIAPI extern
  75. #endif
  76.  
  77.  
  78. #ifdef __cplusplus
  79. extern "C" {
  80. #endif
  81.  
  82.  
  83. #ifndef MAKE_MESAMAINLIB
  84. #include "pragmas/gl_pragmas.h"
  85. extern struct Library *mesamainBase;
  86. #endif
  87.  
  88. #ifdef macintosh
  89.     #pragma enumsalwaysint on
  90.     #if PRAGMA_IMPORT_SUPPORTED
  91.     #pragma import on
  92.     #endif
  93. #endif
  94.  
  95.  
  96.  
  97. /*
  98.  * Apps can test for this symbol to do conditional compilation if needed.
  99.  */
  100. #define MESA
  101.  
  102. #define MESA_MAJOR_VERSION 2
  103. #define MESA_MINOR_VERSION 6
  104.  
  105.  
  106. #define GL_VERSION_1_1   1
  107.  
  108.  
  109. /*
  110.  *
  111.  * Enumerations
  112.  *
  113.  */
  114.  
  115. typedef enum {
  116.     /* Boolean values */
  117.     GL_FALSE            = 0,
  118.     GL_TRUE                = 1,
  119.  
  120.     /* Data types */
  121.     GL_BYTE                = 0x1400,
  122.     GL_UNSIGNED_BYTE        = 0x1401,
  123.     GL_SHORT            = 0x1402,
  124.     GL_UNSIGNED_SHORT        = 0x1403,
  125.     GL_INT                = 0x1404,
  126.     GL_UNSIGNED_INT            = 0x1405,
  127.     GL_FLOAT            = 0x1406,
  128.     GL_DOUBLE            = 0x140A,
  129.     GL_2_BYTES            = 0x1407,
  130.     GL_3_BYTES            = 0x1408,
  131.     GL_4_BYTES            = 0x1409,
  132.  
  133.     /* Primitives */
  134.     GL_LINES            = 0x0001,
  135.     GL_POINTS            = 0x0000,
  136.     GL_LINE_STRIP            = 0x0003,
  137.     GL_LINE_LOOP            = 0x0002,
  138.     GL_TRIANGLES            = 0x0004,
  139.     GL_TRIANGLE_STRIP        = 0x0005,
  140.     GL_TRIANGLE_FAN            = 0x0006,
  141.     GL_QUADS            = 0x0007,
  142.     GL_QUAD_STRIP            = 0x0008,
  143.     GL_POLYGON            = 0x0009,
  144.     GL_EDGE_FLAG            = 0x0B43,
  145.  
  146.     /* Vertex Arrays */
  147.     GL_VERTEX_ARRAY            = 0x8074,
  148.     GL_NORMAL_ARRAY            = 0x8075,
  149.     GL_COLOR_ARRAY            = 0x8076,
  150.     GL_INDEX_ARRAY            = 0x8077,
  151.     GL_TEXTURE_COORD_ARRAY        = 0x8078,
  152.     GL_EDGE_FLAG_ARRAY        = 0x8079,
  153.     GL_VERTEX_ARRAY_SIZE        = 0x807A,
  154.     GL_VERTEX_ARRAY_TYPE        = 0x807B,
  155.     GL_VERTEX_ARRAY_STRIDE        = 0x807C,
  156.     GL_NORMAL_ARRAY_TYPE        = 0x807E,
  157.     GL_NORMAL_ARRAY_STRIDE        = 0x807F,
  158.     GL_COLOR_ARRAY_SIZE        = 0x8081,
  159.     GL_COLOR_ARRAY_TYPE        = 0x8082,
  160.     GL_COLOR_ARRAY_STRIDE        = 0x8083,
  161.     GL_INDEX_ARRAY_TYPE        = 0x8085,
  162.     GL_INDEX_ARRAY_STRIDE        = 0x8086,
  163.     GL_TEXTURE_COORD_ARRAY_SIZE    = 0x8088,
  164.     GL_TEXTURE_COORD_ARRAY_TYPE    = 0x8089,
  165.     GL_TEXTURE_COORD_ARRAY_STRIDE    = 0x808A,
  166.     GL_EDGE_FLAG_ARRAY_STRIDE    = 0x808C,
  167.     GL_VERTEX_ARRAY_POINTER        = 0x808E,
  168.     GL_NORMAL_ARRAY_POINTER        = 0x808F,
  169.     GL_COLOR_ARRAY_POINTER        = 0x8090,
  170.     GL_INDEX_ARRAY_POINTER        = 0x8091,
  171.     GL_TEXTURE_COORD_ARRAY_POINTER    = 0x8092,
  172.     GL_EDGE_FLAG_ARRAY_POINTER    = 0x8093,
  173.         GL_V2F                = 0x2A20,
  174.     GL_V3F                = 0x2A21,
  175.     GL_C4UB_V2F            = 0x2A22,
  176.     GL_C4UB_V3F            = 0x2A23,
  177.     GL_C3F_V3F            = 0x2A24,
  178.     GL_N3F_V3F            = 0x2A25,
  179.     GL_C4F_N3F_V3F            = 0x2A26,
  180.     GL_T2F_V3F            = 0x2A27,
  181.     GL_T4F_V4F            = 0x2A28,
  182.     GL_T2F_C4UB_V3F            = 0x2A29,
  183.     GL_T2F_C3F_V3F            = 0x2A2A,
  184.     GL_T2F_N3F_V3F            = 0x2A2B,
  185.     GL_T2F_C4F_N3F_V3F        = 0x2A2C,
  186.     GL_T4F_C4F_N3F_V4F        = 0x2A2D,
  187.  
  188.     /* Matrix Mode */
  189.     GL_MATRIX_MODE            = 0x0BA0,
  190.     GL_MODELVIEW            = 0x1700,
  191.     GL_PROJECTION            = 0x1701,
  192.     GL_TEXTURE            = 0x1702,
  193.  
  194.     /* Points */
  195.     GL_POINT_SMOOTH            = 0x0B10,
  196.     GL_POINT_SIZE            = 0x0B11,
  197.     GL_POINT_SIZE_GRANULARITY     = 0x0B13,
  198.     GL_POINT_SIZE_RANGE        = 0x0B12,
  199.  
  200.     /* Lines */
  201.     GL_LINE_SMOOTH            = 0x0B20,
  202.     GL_LINE_STIPPLE            = 0x0B24,
  203.     GL_LINE_STIPPLE_PATTERN        = 0x0B25,
  204.     GL_LINE_STIPPLE_REPEAT        = 0x0B26,
  205.     GL_LINE_WIDTH            = 0x0B21,
  206.     GL_LINE_WIDTH_GRANULARITY    = 0x0B23,
  207.     GL_LINE_WIDTH_RANGE        = 0x0B22,
  208.  
  209.     /* Polygons */
  210.     GL_POINT            = 0x1B00,
  211.     GL_LINE                = 0x1B01,
  212.     GL_FILL                = 0x1B02,
  213.     GL_CCW                = 0x0901,
  214.     GL_CW                = 0x0900,
  215.     GL_FRONT            = 0x0404,
  216.     GL_BACK                = 0x0405,
  217.     GL_CULL_FACE            = 0x0B44,
  218.     GL_CULL_FACE_MODE        = 0x0B45,
  219.     GL_POLYGON_SMOOTH        = 0x0B41,
  220.     GL_POLYGON_STIPPLE        = 0x0B42,
  221.     GL_FRONT_FACE            = 0x0B46,
  222.     GL_POLYGON_MODE            = 0x0B40,
  223.     GL_POLYGON_OFFSET_FACTOR    = 0x8038,
  224.     GL_POLYGON_OFFSET_UNITS        = 0x2A00,
  225.     GL_POLYGON_OFFSET_POINT        = 0x2A01,
  226.     GL_POLYGON_OFFSET_LINE        = 0x2A02,
  227.     GL_POLYGON_OFFSET_FILL        = 0x8037,
  228.  
  229.     /* Display Lists */
  230.     GL_COMPILE            = 0x1300,
  231.     GL_COMPILE_AND_EXECUTE        = 0x1301,
  232.     GL_LIST_BASE            = 0x0B32,
  233.     GL_LIST_INDEX            = 0x0B33,
  234.     GL_LIST_MODE            = 0x0B30,
  235.  
  236.     /* Depth buffer */
  237.     GL_NEVER            = 0x0200,
  238.     GL_LESS                = 0x0201,
  239.     GL_GEQUAL            = 0x0206,
  240.     GL_LEQUAL            = 0x0203,
  241.     GL_GREATER            = 0x0204,
  242.     GL_NOTEQUAL            = 0x0205,
  243.     GL_EQUAL            = 0x0202,
  244.     GL_ALWAYS            = 0x0207,
  245.     GL_DEPTH_TEST            = 0x0B71,
  246.     GL_DEPTH_BITS            = 0x0D56,
  247.     GL_DEPTH_CLEAR_VALUE        = 0x0B73,
  248.     GL_DEPTH_FUNC            = 0x0B74,
  249.     GL_DEPTH_RANGE            = 0x0B70,
  250.     GL_DEPTH_WRITEMASK        = 0x0B72,
  251.     GL_DEPTH_COMPONENT        = 0x1902,
  252.  
  253.     /* Lighting */
  254.     GL_LIGHTING            = 0x0B50,
  255.     GL_LIGHT0            = 0x4000,
  256.     GL_LIGHT1            = 0x4001,
  257.     GL_LIGHT2            = 0x4002,
  258.     GL_LIGHT3            = 0x4003,
  259.     GL_LIGHT4            = 0x4004,
  260.     GL_LIGHT5            = 0x4005,
  261.     GL_LIGHT6            = 0x4006,
  262.     GL_LIGHT7            = 0x4007,
  263.     GL_SPOT_EXPONENT        = 0x1205,
  264.     GL_SPOT_CUTOFF            = 0x1206,
  265.     GL_CONSTANT_ATTENUATION        = 0x1207,
  266.     GL_LINEAR_ATTENUATION        = 0x1208,
  267.     GL_QUADRATIC_ATTENUATION    = 0x1209,
  268.     GL_AMBIENT            = 0x1200,
  269.     GL_DIFFUSE            = 0x1201,
  270.     GL_SPECULAR            = 0x1202,
  271.     GL_SHININESS            = 0x1601,
  272.     GL_EMISSION            = 0x1600,
  273.     GL_POSITION            = 0x1203,
  274.     GL_SPOT_DIRECTION        = 0x1204,
  275.     GL_AMBIENT_AND_DIFFUSE        = 0x1602,
  276.     GL_COLOR_INDEXES        = 0x1603,
  277.     GL_LIGHT_MODEL_TWO_SIDE        = 0x0B52,
  278.     GL_LIGHT_MODEL_LOCAL_VIEWER    = 0x0B51,
  279.     GL_LIGHT_MODEL_AMBIENT        = 0x0B53,
  280.     GL_FRONT_AND_BACK        = 0x0408,
  281.     GL_SHADE_MODEL            = 0x0B54,
  282.     GL_FLAT                = 0x1D00,
  283.     GL_SMOOTH            = 0x1D01,
  284.     GL_COLOR_MATERIAL        = 0x0B57,
  285.     GL_COLOR_MATERIAL_FACE        = 0x0B55,
  286.     GL_COLOR_MATERIAL_PARAMETER    = 0x0B56,
  287.     GL_NORMALIZE            = 0x0BA1,
  288.  
  289.     /* User clipping planes */
  290.     GL_CLIP_PLANE0            = 0x3000,
  291.     GL_CLIP_PLANE1            = 0x3001,
  292.     GL_CLIP_PLANE2            = 0x3002,
  293.     GL_CLIP_PLANE3            = 0x3003,
  294.     GL_CLIP_PLANE4            = 0x3004,
  295.     GL_CLIP_PLANE5            = 0x3005,
  296.  
  297.     /* Accumulation buffer */
  298.     GL_ACCUM_RED_BITS        = 0x0D58,
  299.     GL_ACCUM_GREEN_BITS        = 0x0D59,
  300.     GL_ACCUM_BLUE_BITS        = 0x0D5A,
  301.     GL_ACCUM_ALPHA_BITS        = 0x0D5B,
  302.     GL_ACCUM_CLEAR_VALUE        = 0x0B80,
  303.     GL_ACCUM            = 0x0100,
  304.     GL_ADD                = 0x0104,
  305.     GL_LOAD                = 0x0101,
  306.     GL_MULT                = 0x0103,
  307.     GL_RETURN            = 0x0102,
  308.  
  309.     /* Alpha testing */
  310.     GL_ALPHA_TEST            = 0x0BC0,
  311.     GL_ALPHA_TEST_REF        = 0x0BC2,
  312.     GL_ALPHA_TEST_FUNC        = 0x0BC1,
  313.  
  314.     /* Blending */
  315.     GL_BLEND            = 0x0BE2,
  316.     GL_BLEND_SRC            = 0x0BE1,
  317.     GL_BLEND_DST            = 0x0BE0,
  318.     GL_ZERO                = 0,
  319.     GL_ONE                = 1,
  320.     GL_SRC_COLOR            = 0x0300,
  321.     GL_ONE_MINUS_SRC_COLOR        = 0x0301,
  322.     GL_DST_COLOR            = 0x0306,
  323.     GL_ONE_MINUS_DST_COLOR        = 0x0307,
  324.     GL_SRC_ALPHA            = 0x0302,
  325.     GL_ONE_MINUS_SRC_ALPHA        = 0x0303,
  326.     GL_DST_ALPHA            = 0x0304,
  327.     GL_ONE_MINUS_DST_ALPHA        = 0x0305,
  328.     GL_SRC_ALPHA_SATURATE        = 0x0308,
  329.     GL_CONSTANT_COLOR        = 0x8001,
  330.     GL_ONE_MINUS_CONSTANT_COLOR    = 0x8002,
  331.     GL_CONSTANT_ALPHA        = 0x8003,
  332.     GL_ONE_MINUS_CONSTANT_ALPHA    = 0x8004,
  333.  
  334.     /* Render Mode */
  335.     GL_FEEDBACK            = 0x1C01,
  336.     GL_RENDER            = 0x1C00,
  337.     GL_SELECT            = 0x1C02,
  338.  
  339.     /* Feedback */
  340.     GL_2D                = 0x0600,
  341.     GL_3D                = 0x0601,
  342.     GL_3D_COLOR            = 0x0602,
  343.     GL_3D_COLOR_TEXTURE        = 0x0603,
  344.     GL_4D_COLOR_TEXTURE        = 0x0604,
  345.     GL_POINT_TOKEN            = 0x0701,
  346.     GL_LINE_TOKEN            = 0x0702,
  347.     GL_LINE_RESET_TOKEN        = 0x0707,
  348.     GL_POLYGON_TOKEN        = 0x0703,
  349.     GL_BITMAP_TOKEN            = 0x0704,
  350.     GL_DRAW_PIXEL_TOKEN        = 0x0705,
  351.     GL_COPY_PIXEL_TOKEN        = 0x0706,
  352.     GL_PASS_THROUGH_TOKEN        = 0x0700,
  353.     GL_FEEDBACK_BUFFER_POINTER    = 0x0DF0,
  354.     GL_FEEDBACK_BUFFER_SIZE        = 0x0DF1,
  355.     GL_FEEDBACK_BUFFER_TYPE        = 0x0DF2,
  356.  
  357.  
  358.     /* Fog */
  359.     GL_FOG                = 0x0B60,
  360.     GL_FOG_MODE            = 0x0B65,
  361.     GL_FOG_DENSITY            = 0x0B62,
  362.     GL_FOG_COLOR            = 0x0B66,
  363.     GL_FOG_INDEX            = 0x0B61,
  364.     GL_FOG_START            = 0x0B63,
  365.     GL_FOG_END            = 0x0B64,
  366.     GL_LINEAR            = 0x2601,
  367.     GL_EXP                = 0x0800,
  368.     GL_EXP2                = 0x0801,
  369.  
  370.     /* Logic Ops */
  371.     GL_LOGIC_OP            = 0x0BF1,
  372.     GL_INDEX_LOGIC_OP        = 0x0BF1,
  373.     GL_COLOR_LOGIC_OP        = 0x0BF2,
  374.     GL_LOGIC_OP_MODE        = 0x0BF0,
  375.     GL_CLEAR            = 0x1500,
  376.     GL_SET                = 0x150F,
  377.     GL_COPY                = 0x1503,
  378.     GL_COPY_INVERTED        = 0x150C,
  379.     GL_NOOP                = 0x1505,
  380.     GL_INVERT            = 0x150A,
  381.     GL_AND                = 0x1501,
  382.     GL_NAND                = 0x150E,
  383.     GL_OR                = 0x1507,
  384.     GL_NOR                = 0x1508,
  385.     GL_XOR                = 0x1506,
  386.     GL_EQUIV            = 0x1509,
  387.     GL_AND_REVERSE            = 0x1502,
  388.     GL_AND_INVERTED            = 0x1504,
  389.     GL_OR_REVERSE            = 0x150B,
  390.     GL_OR_INVERTED            = 0x150D,
  391.  
  392.     /* Stencil */
  393.     GL_STENCIL_TEST            = 0x0B90,
  394.     GL_STENCIL_WRITEMASK        = 0x0B98,
  395.     GL_STENCIL_BITS            = 0x0D57,
  396.     GL_STENCIL_FUNC            = 0x0B92,
  397.     GL_STENCIL_VALUE_MASK        = 0x0B93,
  398.     GL_STENCIL_REF            = 0x0B97,
  399.     GL_STENCIL_FAIL            = 0x0B94,
  400.     GL_STENCIL_PASS_DEPTH_PASS    = 0x0B96,
  401.     GL_STENCIL_PASS_DEPTH_FAIL    = 0x0B95,
  402.     GL_STENCIL_CLEAR_VALUE        = 0x0B91,
  403.     GL_STENCIL_INDEX        = 0x1901,
  404.     GL_KEEP                = 0x1E00,
  405.     GL_REPLACE            = 0x1E01,
  406.     GL_INCR                = 0x1E02,
  407.     GL_DECR                = 0x1E03,
  408.  
  409.     /* Buffers, Pixel Drawing/Reading */
  410.     GL_NONE                = 0,
  411.     GL_LEFT                = 0x0406,
  412.     GL_RIGHT            = 0x0407,
  413.     /*GL_FRONT            = 0x0404, */
  414.     /*GL_BACK            = 0x0405, */
  415.     /*GL_FRONT_AND_BACK        = 0x0408, */
  416.     GL_FRONT_LEFT            = 0x0400,
  417.     GL_FRONT_RIGHT            = 0x0401,
  418.     GL_BACK_LEFT            = 0x0402,
  419.     GL_BACK_RIGHT            = 0x0403,
  420.     GL_AUX0                = 0x0409,
  421.     GL_AUX1                = 0x040A,
  422.     GL_AUX2                = 0x040B,
  423.     GL_AUX3                = 0x040C,
  424.     GL_COLOR_INDEX            = 0x1900,
  425.     GL_RED                = 0x1903,
  426.     GL_GREEN            = 0x1904,
  427.     GL_BLUE                = 0x1905,
  428.     GL_ALPHA            = 0x1906,
  429.     GL_LUMINANCE            = 0x1909,
  430.     GL_LUMINANCE_ALPHA        = 0x190A,
  431.     GL_ALPHA_BITS            = 0x0D55,
  432.     GL_RED_BITS            = 0x0D52,
  433.     GL_GREEN_BITS            = 0x0D53,
  434.     GL_BLUE_BITS            = 0x0D54,
  435.     GL_INDEX_BITS            = 0x0D51,
  436.     GL_SUBPIXEL_BITS        = 0x0D50,
  437.     GL_AUX_BUFFERS            = 0x0C00,
  438.     GL_READ_BUFFER            = 0x0C02,
  439.     GL_DRAW_BUFFER            = 0x0C01,
  440.     GL_DOUBLEBUFFER            = 0x0C32,
  441.     GL_STEREO            = 0x0C33,
  442.     GL_BITMAP            = 0x1A00,
  443.     GL_COLOR            = 0x1800,
  444.     GL_DEPTH            = 0x1801,
  445.     GL_STENCIL            = 0x1802,
  446.     GL_DITHER            = 0x0BD0,
  447.     GL_RGB                = 0x1907,
  448.     GL_RGBA                = 0x1908,
  449.  
  450.     /* Implementation limits */
  451.     GL_MAX_LIST_NESTING        = 0x0B31,
  452.     GL_MAX_ATTRIB_STACK_DEPTH    = 0x0D35,
  453.     GL_MAX_MODELVIEW_STACK_DEPTH    = 0x0D36,
  454.     GL_MAX_NAME_STACK_DEPTH        = 0x0D37,
  455.     GL_MAX_PROJECTION_STACK_DEPTH    = 0x0D38,
  456.     GL_MAX_TEXTURE_STACK_DEPTH    = 0x0D39,
  457.     GL_MAX_EVAL_ORDER        = 0x0D30,
  458.     GL_MAX_LIGHTS            = 0x0D31,
  459.     GL_MAX_CLIP_PLANES        = 0x0D32,
  460.     GL_MAX_TEXTURE_SIZE        = 0x0D33,
  461.     GL_MAX_PIXEL_MAP_TABLE        = 0x0D34,
  462.     GL_MAX_VIEWPORT_DIMS        = 0x0D3A,
  463.     GL_MAX_CLIENT_ATTRIB_STACK_DEPTH= 0x0D3B,
  464.  
  465.     /* Gets */
  466.     GL_ATTRIB_STACK_DEPTH        = 0x0BB0,
  467.     GL_CLIENT_ATTRIB_STACK_DEPTH    = 0x0BB1,
  468.     GL_COLOR_CLEAR_VALUE        = 0x0C22,
  469.     GL_COLOR_WRITEMASK        = 0x0C23,
  470.     GL_CURRENT_INDEX        = 0x0B01,
  471.     GL_CURRENT_COLOR        = 0x0B00,
  472.     GL_CURRENT_NORMAL        = 0x0B02,
  473.     GL_CURRENT_RASTER_COLOR        = 0x0B04,
  474.     GL_CURRENT_RASTER_DISTANCE    = 0x0B09,
  475.     GL_CURRENT_RASTER_INDEX        = 0x0B05,
  476.     GL_CURRENT_RASTER_POSITION    = 0x0B07,
  477.     GL_CURRENT_RASTER_TEXTURE_COORDS = 0x0B06,
  478.     GL_CURRENT_RASTER_POSITION_VALID = 0x0B08,
  479.     GL_CURRENT_TEXTURE_COORDS    = 0x0B03,
  480.     GL_INDEX_CLEAR_VALUE        = 0x0C20,
  481.     GL_INDEX_MODE            = 0x0C30,
  482.     GL_INDEX_WRITEMASK        = 0x0C21,
  483.     GL_MODELVIEW_MATRIX        = 0x0BA6,
  484.     GL_MODELVIEW_STACK_DEPTH    = 0x0BA3,
  485.     GL_NAME_STACK_DEPTH        = 0x0D70,
  486.     GL_PROJECTION_MATRIX        = 0x0BA7,
  487.     GL_PROJECTION_STACK_DEPTH    = 0x0BA4,
  488.     GL_RENDER_MODE            = 0x0C40,
  489.     GL_RGBA_MODE            = 0x0C31,
  490.     GL_TEXTURE_MATRIX        = 0x0BA8,
  491.     GL_TEXTURE_STACK_DEPTH        = 0x0BA5,
  492.     GL_VIEWPORT            = 0x0BA2,
  493.  
  494.  
  495.     /* Evaluators */
  496.     GL_AUTO_NORMAL            = 0x0D80,
  497.     GL_MAP1_COLOR_4            = 0x0D90,
  498.     GL_MAP1_GRID_DOMAIN        = 0x0DD0,
  499.     GL_MAP1_GRID_SEGMENTS        = 0x0DD1,
  500.     GL_MAP1_INDEX            = 0x0D91,
  501.     GL_MAP1_NORMAL            = 0x0D92,
  502.     GL_MAP1_TEXTURE_COORD_1        = 0x0D93,
  503.     GL_MAP1_TEXTURE_COORD_2        = 0x0D94,
  504.     GL_MAP1_TEXTURE_COORD_3        = 0x0D95,
  505.     GL_MAP1_TEXTURE_COORD_4        = 0x0D96,
  506.     GL_MAP1_VERTEX_3        = 0x0D97,
  507.     GL_MAP1_VERTEX_4        = 0x0D98,
  508.     GL_MAP2_COLOR_4            = 0x0DB0,
  509.     GL_MAP2_GRID_DOMAIN        = 0x0DD2,
  510.     GL_MAP2_GRID_SEGMENTS        = 0x0DD3,
  511.     GL_MAP2_INDEX            = 0x0DB1,
  512.     GL_MAP2_NORMAL            = 0x0DB2,
  513.     GL_MAP2_TEXTURE_COORD_1        = 0x0DB3,
  514.     GL_MAP2_TEXTURE_COORD_2        = 0x0DB4,
  515.     GL_MAP2_TEXTURE_COORD_3        = 0x0DB5,
  516.     GL_MAP2_TEXTURE_COORD_4        = 0x0DB6,
  517.     GL_MAP2_VERTEX_3        = 0x0DB7,
  518.     GL_MAP2_VERTEX_4        = 0x0DB8,
  519.     GL_COEFF            = 0x0A00,
  520.     GL_DOMAIN            = 0x0A02,
  521.     GL_ORDER            = 0x0A01,
  522.  
  523.     /* Hints */
  524.     GL_FOG_HINT            = 0x0C54,
  525.     GL_LINE_SMOOTH_HINT        = 0x0C52,
  526.     GL_PERSPECTIVE_CORRECTION_HINT    = 0x0C50,
  527.     GL_POINT_SMOOTH_HINT        = 0x0C51,
  528.     GL_POLYGON_SMOOTH_HINT        = 0x0C53,
  529.     GL_DONT_CARE            = 0x1100,
  530.     GL_FASTEST            = 0x1101,
  531.     GL_NICEST            = 0x1102,
  532.  
  533.     /* Scissor box */
  534.     GL_SCISSOR_TEST            = 0x0C11,
  535.     GL_SCISSOR_BOX            = 0x0C10,
  536.  
  537.     /* Pixel Mode / Transfer */
  538.     GL_MAP_COLOR            = 0x0D10,
  539.     GL_MAP_STENCIL            = 0x0D11,
  540.     GL_INDEX_SHIFT            = 0x0D12,
  541.     GL_INDEX_OFFSET            = 0x0D13,
  542.     GL_RED_SCALE            = 0x0D14,
  543.     GL_RED_BIAS            = 0x0D15,
  544.     GL_GREEN_SCALE            = 0x0D18,
  545.     GL_GREEN_BIAS            = 0x0D19,
  546.     GL_BLUE_SCALE            = 0x0D1A,
  547.     GL_BLUE_BIAS            = 0x0D1B,
  548.     GL_ALPHA_SCALE            = 0x0D1C,
  549.     GL_ALPHA_BIAS            = 0x0D1D,
  550.     GL_DEPTH_SCALE            = 0x0D1E,
  551.     GL_DEPTH_BIAS            = 0x0D1F,
  552.     GL_PIXEL_MAP_S_TO_S_SIZE    = 0x0CB1,
  553.     GL_PIXEL_MAP_I_TO_I_SIZE    = 0x0CB0,
  554.     GL_PIXEL_MAP_I_TO_R_SIZE    = 0x0CB2,
  555.     GL_PIXEL_MAP_I_TO_G_SIZE    = 0x0CB3,
  556.     GL_PIXEL_MAP_I_TO_B_SIZE    = 0x0CB4,
  557.     GL_PIXEL_MAP_I_TO_A_SIZE    = 0x0CB5,
  558.     GL_PIXEL_MAP_R_TO_R_SIZE    = 0x0CB6,
  559.     GL_PIXEL_MAP_G_TO_G_SIZE    = 0x0CB7,
  560.     GL_PIXEL_MAP_B_TO_B_SIZE    = 0x0CB8,
  561.     GL_PIXEL_MAP_A_TO_A_SIZE    = 0x0CB9,
  562.     GL_PIXEL_MAP_S_TO_S        = 0x0C71,
  563.     GL_PIXEL_MAP_I_TO_I        = 0x0C70,
  564.     GL_PIXEL_MAP_I_TO_R        = 0x0C72,
  565.     GL_PIXEL_MAP_I_TO_G        = 0x0C73,
  566.     GL_PIXEL_MAP_I_TO_B        = 0x0C74,
  567.     GL_PIXEL_MAP_I_TO_A        = 0x0C75,
  568.     GL_PIXEL_MAP_R_TO_R        = 0x0C76,
  569.     GL_PIXEL_MAP_G_TO_G        = 0x0C77,
  570.     GL_PIXEL_MAP_B_TO_B        = 0x0C78,
  571.     GL_PIXEL_MAP_A_TO_A        = 0x0C79,
  572.     GL_PACK_ALIGNMENT        = 0x0D05,
  573.     GL_PACK_LSB_FIRST        = 0x0D01,
  574.     GL_PACK_ROW_LENGTH        = 0x0D02,
  575.     GL_PACK_SKIP_PIXELS        = 0x0D04,
  576.     GL_PACK_SKIP_ROWS        = 0x0D03,
  577.     GL_PACK_SWAP_BYTES        = 0x0D00,
  578.     GL_UNPACK_ALIGNMENT        = 0x0CF5,
  579.     GL_UNPACK_LSB_FIRST        = 0x0CF1,
  580.     GL_UNPACK_ROW_LENGTH        = 0x0CF2,
  581.     GL_UNPACK_SKIP_PIXELS        = 0x0CF4,
  582.     GL_UNPACK_SKIP_ROWS        = 0x0CF3,
  583.     GL_UNPACK_SWAP_BYTES        = 0x0CF0,
  584.     GL_ZOOM_X            = 0x0D16,
  585.     GL_ZOOM_Y            = 0x0D17,
  586.  
  587.     /* Texture mapping */
  588.     GL_TEXTURE_ENV            = 0x2300,
  589.     GL_TEXTURE_ENV_MODE        = 0x2200,
  590.     GL_TEXTURE_1D            = 0x0DE0,
  591.     GL_TEXTURE_2D            = 0x0DE1,
  592.     GL_TEXTURE_WRAP_S        = 0x2802,
  593.     GL_TEXTURE_WRAP_T        = 0x2803,
  594.     GL_TEXTURE_MAG_FILTER        = 0x2800,
  595.     GL_TEXTURE_MIN_FILTER        = 0x2801,
  596.     GL_TEXTURE_ENV_COLOR        = 0x2201,
  597.     GL_TEXTURE_GEN_S        = 0x0C60,
  598.     GL_TEXTURE_GEN_T        = 0x0C61,
  599.     GL_TEXTURE_GEN_MODE        = 0x2500,
  600.     GL_TEXTURE_BORDER_COLOR        = 0x1004,
  601.     GL_TEXTURE_WIDTH        = 0x1000,
  602.     GL_TEXTURE_HEIGHT        = 0x1001,
  603.     GL_TEXTURE_BORDER        = 0x1005,
  604.     GL_TEXTURE_COMPONENTS        = 0x1003,
  605.     GL_TEXTURE_RED_SIZE        = 0x805C,
  606.     GL_TEXTURE_GREEN_SIZE        = 0x805D,
  607.     GL_TEXTURE_BLUE_SIZE        = 0x805E,
  608.     GL_TEXTURE_ALPHA_SIZE        = 0x805F,
  609.     GL_TEXTURE_LUMINANCE_SIZE    = 0x8060,
  610.     GL_TEXTURE_INTENSITY_SIZE    = 0x8061,
  611.     GL_NEAREST_MIPMAP_NEAREST    = 0x2700,
  612.     GL_NEAREST_MIPMAP_LINEAR    = 0x2702,
  613.     GL_LINEAR_MIPMAP_NEAREST    = 0x2701,
  614.     GL_LINEAR_MIPMAP_LINEAR        = 0x2703,
  615.     GL_OBJECT_LINEAR        = 0x2401,
  616.     GL_OBJECT_PLANE            = 0x2501,
  617.     GL_EYE_LINEAR            = 0x2400,
  618.     GL_EYE_PLANE            = 0x2502,
  619.     GL_SPHERE_MAP            = 0x2402,
  620.     GL_DECAL            = 0x2101,
  621.     GL_MODULATE            = 0x2100,
  622.     GL_NEAREST            = 0x2600,
  623.     GL_REPEAT            = 0x2901,
  624.     GL_CLAMP            = 0x2900,
  625.     GL_S                = 0x2000,
  626.     GL_T                = 0x2001,
  627.     GL_R                = 0x2002,
  628.     GL_Q                = 0x2003,
  629.     GL_TEXTURE_GEN_R        = 0x0C62,
  630.     GL_TEXTURE_GEN_Q        = 0x0C63,
  631.  
  632.     GL_PROXY_TEXTURE_1D        = 0x8063,
  633.     GL_PROXY_TEXTURE_2D        = 0x8064,
  634.     GL_TEXTURE_PRIORITY        = 0x8066,
  635.     GL_TEXTURE_RESIDENT        = 0x8067,
  636.     GL_TEXTURE_BINDING_1D        = 0x8068,
  637.     GL_TEXTURE_BINDING_2D        = 0x8069,
  638.  
  639.     /* Internal texture formats */
  640.     GL_ALPHA4            = 0x803B,
  641.     GL_ALPHA8            = 0x803C,
  642.     GL_ALPHA12            = 0x803D,
  643.     GL_ALPHA16            = 0x803E,
  644.     GL_LUMINANCE4            = 0x803F,
  645.     GL_LUMINANCE8            = 0x8040,
  646.     GL_LUMINANCE12            = 0x8041,
  647.     GL_LUMINANCE16            = 0x8042,
  648.     GL_LUMINANCE4_ALPHA4        = 0x8043,
  649.     GL_LUMINANCE6_ALPHA2        = 0x8044,
  650.     GL_LUMINANCE8_ALPHA8        = 0x8045,
  651.     GL_LUMINANCE12_ALPHA4        = 0x8046,
  652.     GL_LUMINANCE12_ALPHA12        = 0x8047,
  653.     GL_LUMINANCE16_ALPHA16        = 0x8048,
  654.     GL_INTENSITY            = 0x8049,
  655.     GL_INTENSITY4            = 0x804A,
  656.     GL_INTENSITY8            = 0x804B,
  657.     GL_INTENSITY12            = 0x804C,
  658.     GL_INTENSITY16            = 0x804D,
  659.     GL_R3_G3_B2            = 0x2A10,
  660.     GL_RGB4                = 0x804F,
  661.     GL_RGB5                = 0x8050,
  662.     GL_RGB8                = 0x8051,
  663.     GL_RGB10            = 0x8052,
  664.     GL_RGB12            = 0x8053,
  665.     GL_RGB16            = 0x8054,
  666.     GL_RGBA2            = 0x8055,
  667.     GL_RGBA4            = 0x8056,
  668.     GL_RGB5_A1            = 0x8057,
  669.     GL_RGBA8            = 0x8058,
  670.     GL_RGB10_A2            = 0x8059,
  671.     GL_RGBA12            = 0x805A,
  672.     GL_RGBA16            = 0x805B,
  673.  
  674.     /* Utility */
  675.     GL_VENDOR            = 0x1F00,
  676.     GL_RENDERER            = 0x1F01,
  677.     GL_VERSION            = 0x1F02,
  678.     GL_EXTENSIONS            = 0x1F03,
  679.  
  680.     /* Errors */
  681.     GL_INVALID_VALUE        = 0x0501,
  682.     GL_INVALID_ENUM            = 0x0500,
  683.     GL_INVALID_OPERATION        = 0x0502,
  684.     GL_STACK_OVERFLOW        = 0x0503,
  685.     GL_STACK_UNDERFLOW        = 0x0504,
  686.     GL_OUT_OF_MEMORY        = 0x0505,
  687.  
  688.     /*
  689.      * 1.0 Extensions
  690.      */
  691.         /* GL_EXT_blend_minmax and GL_EXT_blend_color */
  692.     GL_CONSTANT_COLOR_EXT        = 0x8001,
  693.     GL_ONE_MINUS_CONSTANT_COLOR_EXT    = 0x8002,
  694.     GL_CONSTANT_ALPHA_EXT        = 0x8003,
  695.     GL_ONE_MINUS_CONSTANT_ALPHA_EXT    = 0x8004,
  696.     GL_BLEND_EQUATION_EXT        = 0x8009,
  697.     GL_MIN_EXT            = 0x8007,
  698.     GL_MAX_EXT            = 0x8008,
  699.     GL_FUNC_ADD_EXT            = 0x8006,
  700.     GL_FUNC_SUBTRACT_EXT        = 0x800A,
  701.     GL_FUNC_REVERSE_SUBTRACT_EXT    = 0x800B,
  702.     GL_BLEND_COLOR_EXT        = 0x8005,
  703.  
  704.     /* GL_EXT_polygon_offset */
  705.         GL_POLYGON_OFFSET_EXT           = 0x8037,
  706.         GL_POLYGON_OFFSET_FACTOR_EXT    = 0x8038,
  707.         GL_POLYGON_OFFSET_BIAS_EXT      = 0x8039,
  708.  
  709.     /* GL_EXT_vertex_array */
  710.     GL_VERTEX_ARRAY_EXT            = 0x8074,
  711.     GL_NORMAL_ARRAY_EXT            = 0x8075,
  712.     GL_COLOR_ARRAY_EXT            = 0x8076,
  713.     GL_INDEX_ARRAY_EXT            = 0x8077,
  714.     GL_TEXTURE_COORD_ARRAY_EXT        = 0x8078,
  715.     GL_EDGE_FLAG_ARRAY_EXT            = 0x8079,
  716.     GL_VERTEX_ARRAY_SIZE_EXT        = 0x807A,
  717.     GL_VERTEX_ARRAY_TYPE_EXT        = 0x807B,
  718.     GL_VERTEX_ARRAY_STRIDE_EXT        = 0x807C,
  719.     GL_VERTEX_ARRAY_COUNT_EXT        = 0x807D,
  720.     GL_NORMAL_ARRAY_TYPE_EXT        = 0x807E,
  721.     GL_NORMAL_ARRAY_STRIDE_EXT        = 0x807F,
  722.     GL_NORMAL_ARRAY_COUNT_EXT        = 0x8080,
  723.     GL_COLOR_ARRAY_SIZE_EXT            = 0x8081,
  724.     GL_COLOR_ARRAY_TYPE_EXT            = 0x8082,
  725.     GL_COLOR_ARRAY_STRIDE_EXT        = 0x8083,
  726.     GL_COLOR_ARRAY_COUNT_EXT        = 0x8084,
  727.     GL_INDEX_ARRAY_TYPE_EXT            = 0x8085,
  728.     GL_INDEX_ARRAY_STRIDE_EXT        = 0x8086,
  729.     GL_INDEX_ARRAY_COUNT_EXT        = 0x8087,
  730.     GL_TEXTURE_COORD_ARRAY_SIZE_EXT        = 0x8088,
  731.     GL_TEXTURE_COORD_ARRAY_TYPE_EXT        = 0x8089,
  732.     GL_TEXTURE_COORD_ARRAY_STRIDE_EXT    = 0x808A,
  733.     GL_TEXTURE_COORD_ARRAY_COUNT_EXT    = 0x808B,
  734.     GL_EDGE_FLAG_ARRAY_STRIDE_EXT        = 0x808C,
  735.     GL_EDGE_FLAG_ARRAY_COUNT_EXT        = 0x808D,
  736.     GL_VERTEX_ARRAY_POINTER_EXT        = 0x808E,
  737.     GL_NORMAL_ARRAY_POINTER_EXT        = 0x808F,
  738.     GL_COLOR_ARRAY_POINTER_EXT        = 0x8090,
  739.     GL_INDEX_ARRAY_POINTER_EXT        = 0x8091,
  740.     GL_TEXTURE_COORD_ARRAY_POINTER_EXT    = 0x8092,
  741.     GL_EDGE_FLAG_ARRAY_POINTER_EXT        = 0x8093,
  742.  
  743.     /* GL_EXT_texture_object */
  744.     GL_TEXTURE_PRIORITY_EXT        = 0x8066,
  745.     GL_TEXTURE_RESIDENT_EXT        = 0x8067,
  746.     GL_TEXTURE_1D_BINDING_EXT    = 0x8068,
  747.     GL_TEXTURE_2D_BINDING_EXT    = 0x8069,
  748.  
  749.     /* GL_EXT_texture3D */
  750.     GL_PACK_SKIP_IMAGES_EXT        = 0x806B,
  751.     GL_PACK_IMAGE_HEIGHT_EXT    = 0x806C,
  752.     GL_UNPACK_SKIP_IMAGES_EXT    = 0x806D,
  753.     GL_UNPACK_IMAGE_HEIGHT_EXT    = 0x806E,
  754.     GL_TEXTURE_3D_EXT        = 0x806F,
  755.     GL_PROXY_TEXTURE_3D_EXT        = 0x8070,
  756.     GL_TEXTURE_DEPTH_EXT        = 0x8071,
  757.     GL_TEXTURE_WRAP_R_EXT        = 0x8072,
  758.     GL_MAX_3D_TEXTURE_SIZE_EXT    = 0x8073,
  759.     GL_TEXTURE_3D_BINDING_EXT    = 0x806A,
  760.  
  761.         /* GL_EXT_paletted_texture */
  762.     GL_TABLE_TOO_LARGE_EXT            = 0x8031,
  763.     GL_COLOR_TABLE_FORMAT_EXT        = 0x80D8,
  764.     GL_COLOR_TABLE_WIDTH_EXT        = 0x80D9,
  765.     GL_COLOR_TABLE_RED_SIZE_EXT        = 0x80DA,
  766.     GL_COLOR_TABLE_GREEN_SIZE_EXT        = 0x80DB,
  767.     GL_COLOR_TABLE_BLUE_SIZE_EXT        = 0x80DC,
  768.     GL_COLOR_TABLE_ALPHA_SIZE_EXT         = 0x80DD,
  769.     GL_COLOR_TABLE_LUMINANCE_SIZE_EXT    = 0x80DE,
  770.     GL_COLOR_TABLE_INTENSITY_SIZE_EXT    = 0x80DF,
  771.     GL_TEXTURE_INDEX_SIZE_EXT        = 0x80E1, /*XXX right value??*/
  772.     GL_COLOR_INDEX1_EXT            = 0x80E2,
  773.     GL_COLOR_INDEX2_EXT            = 0x80E3,
  774.     GL_COLOR_INDEX4_EXT            = 0x80E4,
  775.     GL_COLOR_INDEX8_EXT            = 0x80E5,
  776.     GL_COLOR_INDEX12_EXT            = 0x80E6,
  777.     GL_COLOR_INDEX16_EXT            = 0x80E7,
  778.  
  779.     /* GL_EXT_shared_texture_palette */
  780.     GL_SHARED_TEXTURE_PALETTE_EXT        = 0x81FB,
  781.  
  782. #if 0
  783.     /* GL_SGIS_texture_lod */
  784.     GL_TEXTURE_MIN_LOD_SGIS            = 0x813A,
  785.     GL_TEXTURE_MAX_LOD_SGIS            = 0x813B,
  786.     GL_TEXTURE_BASE_LEVEL_SGIS        = 0x813C,
  787.     GL_TEXTURE_MAX_LEVEL_SGIS        = 0x813D,
  788. #endif
  789.  
  790.     /* GL_EXT_point_parameters */
  791.     GL_POINT_SIZE_MIN_EXT            = 0x8126,
  792.     GL_POINT_SIZE_MAX_EXT            = 0x8127,
  793.     GL_POINT_FADE_THRESHOLD_SIZE_EXT    = 0x8128,
  794.     GL_DISTANCE_ATTENUATION_EXT        = 0x8129
  795. }
  796. #ifdef CENTERLINE_CLPP
  797.   /* CenterLine C++ workaround: */
  798.   gl_enum;
  799.   typedef int GLenum;
  800. #else
  801.   /* all other compilers */
  802.   GLenum;
  803. #endif
  804.  
  805.  
  806. /* GL_NO_ERROR must be zero */
  807. #define GL_NO_ERROR 0
  808.  
  809.  
  810.  
  811. enum {
  812.     GL_CURRENT_BIT        = 0x00000001,
  813.     GL_POINT_BIT        = 0x00000002,
  814.     GL_LINE_BIT        = 0x00000004,
  815.     GL_POLYGON_BIT        = 0x00000008,
  816.     GL_POLYGON_STIPPLE_BIT    = 0x00000010,
  817.     GL_PIXEL_MODE_BIT    = 0x00000020,
  818.     GL_LIGHTING_BIT        = 0x00000040,
  819.     GL_FOG_BIT        = 0x00000080,
  820.     GL_DEPTH_BUFFER_BIT    = 0x00000100,
  821.     GL_ACCUM_BUFFER_BIT    = 0x00000200,
  822.     GL_STENCIL_BUFFER_BIT    = 0x00000400,
  823.     GL_VIEWPORT_BIT        = 0x00000800,
  824.     GL_TRANSFORM_BIT    = 0x00001000,
  825.     GL_ENABLE_BIT        = 0x00002000,
  826.     GL_COLOR_BUFFER_BIT    = 0x00004000,
  827.     GL_HINT_BIT        = 0x00008000,
  828.     GL_EVAL_BIT        = 0x00010000,
  829.     GL_LIST_BIT        = 0x00020000,
  830.     GL_TEXTURE_BIT        = 0x00040000,
  831.     GL_SCISSOR_BIT        = 0x00080000,
  832.     GL_ALL_ATTRIB_BITS    = 0x000fffff
  833. };
  834.  
  835.  
  836. enum {
  837.     GL_CLIENT_PIXEL_STORE_BIT    = 0x00000001,
  838.     GL_CLIENT_VERTEX_ARRAY_BIT    = 0x00000002,
  839.     GL_CLIENT_ALL_ATTRIB_BITS    = 0x0000FFFF
  840. };
  841.  
  842.  
  843.  
  844. typedef unsigned int GLbitfield;
  845.  
  846.  
  847. #ifdef CENTERLINE_CLPP
  848. #define signed
  849. #endif
  850.  
  851.  
  852. /*
  853.  *
  854.  * Data types (may be architecture dependent in some cases)
  855.  *
  856.  */
  857.  
  858. /*  C type        GL type        storage                            */
  859. /*-------------------------------------------------------------------------*/
  860. typedef void        GLvoid;
  861. typedef unsigned char    GLboolean;
  862. typedef signed char    GLbyte;        /* 1-byte signed */
  863. typedef short        GLshort;    /* 2-byte signed */
  864. typedef int        GLint;        /* 4-byte signed */
  865. typedef unsigned char    GLubyte;    /* 1-byte unsigned */
  866. typedef unsigned short    GLushort;    /* 2-byte unsigned */
  867. typedef unsigned int    GLuint;        /* 4-byte unsigned */
  868. typedef int        GLsizei;    /* 4-byte signed */
  869. typedef float        GLfloat;    /* single precision float */
  870. typedef float        GLclampf;    /* single precision float in [0,1] */
  871. typedef double        GLdouble;    /* double precision float */
  872. typedef double        GLclampd;    /* double precision float in [0,1] */
  873.  
  874.  
  875.  
  876. #if defined(__BEOS__) || defined(__QUICKDRAW__)
  877. #pragma export on
  878. #endif
  879.  
  880.  
  881. /*
  882.  * Miscellaneous
  883.  */
  884.  
  885. extern __asm __saveds void APIENTRY glClearIndex( register __fp0 GLfloat c );
  886.  
  887. extern __asm __saveds void APIENTRY glClearColor( register __fp0 GLclampf red,
  888.                                                   register __fp1 GLclampf green,
  889.                                                   register __fp2 GLclampf blue,
  890.                                                   register __fp3 GLclampf alpha );
  891.  
  892. extern __asm __saveds void APIENTRY glClear( register __d0 GLbitfield mask );
  893.  
  894. extern __asm __saveds void APIENTRY glIndexMask( register __d0 GLuint mask );
  895.  
  896. extern __asm __saveds void APIENTRY glColorMask( register __d0 GLboolean red, register __d1 GLboolean green,
  897.                                                  register __d2 GLboolean blue, register __d3 GLboolean alpha );
  898.  
  899. extern __asm __saveds void APIENTRY glAlphaFunc( register __d0 GLenum func, register __fp0 GLclampf ref );
  900.  
  901. extern __asm __saveds void APIENTRY glBlendFunc( register __d0 GLenum sfactor, register __d1 GLenum dfactor );
  902.  
  903. extern __asm __saveds void APIENTRY glLogicOp( register __d0 GLenum opcode );
  904.  
  905. extern __asm __saveds void APIENTRY glCullFace( register __d0 GLenum mode );
  906.  
  907. extern __asm __saveds void APIENTRY glFrontFace( register __d0 GLenum mode );
  908.  
  909. extern __asm __saveds void APIENTRY glPointSize( register __fp0 GLfloat size );
  910.  
  911. extern __asm __saveds void APIENTRY glLineWidth( register __fp0 GLfloat width );
  912.  
  913. extern __asm __saveds void APIENTRY glLineStipple( register __d0 GLint factor, register __d1 GLushort pattern );
  914.  
  915. extern __asm __saveds void APIENTRY glPolygonMode( register __d0 GLenum face, register __d1 GLenum mode );
  916.  
  917. extern __asm __saveds void APIENTRY glPolygonOffset( register __fp0 GLfloat factor, register __fp1 GLfloat units );
  918.  
  919. extern __asm __saveds void APIENTRY glPolygonStipple( register __a0 const GLubyte *mask );
  920.  
  921. extern __asm __saveds void APIENTRY glGetPolygonStipple( register __a0 GLubyte *mask );
  922.  
  923. extern __asm __saveds void APIENTRY glEdgeFlag( register __d0 GLboolean flag );
  924.  
  925. extern __asm __saveds void APIENTRY glEdgeFlagv( register __a0 const GLboolean *flag );
  926.  
  927. extern __asm __saveds void APIENTRY glScissor( register __d0 GLint x, register __d1 GLint y,
  928.                                                register __d2 GLsizei width, register __d3 GLsizei height );
  929.  
  930. extern __asm __saveds void APIENTRY glClipPlane( register __d0 GLenum plane, register __a0 const GLdouble *equation );
  931.  
  932. extern __asm __saveds void APIENTRY glGetClipPlane( register __d0 GLenum plane, register __a0 GLdouble *equation );
  933.  
  934. extern __asm __saveds void APIENTRY glDrawBuffer( register __d0 GLenum mode );
  935.  
  936. extern __asm __saveds void APIENTRY glReadBuffer( register __d0 GLenum mode );
  937.  
  938. extern __asm __saveds void APIENTRY glEnable( register __d0 GLenum cap );
  939.  
  940. extern __asm __saveds void APIENTRY glDisable( register __d0 GLenum cap );
  941.  
  942. extern __asm __saveds GLboolean APIENTRY glIsEnabled( register __d0 GLenum cap );
  943.  
  944.  
  945. extern __asm __saveds void APIENTRY glEnableClientState( register __d0 GLenum cap );
  946.  
  947. extern __asm __saveds void APIENTRY glDisableClientState( register __d0 GLenum cap );
  948.  
  949.  
  950. extern __asm __saveds void APIENTRY glGetBooleanv( register __d0 GLenum pname, register __a0 GLboolean *params );
  951.  
  952. extern __asm __saveds void APIENTRY glGetDoublev( register __d0 GLenum pname, register __a0 GLdouble *params );
  953.  
  954. extern __asm __saveds void APIENTRY glGetFloatv( register __d0 GLenum pname, register __a0 GLfloat *params );
  955.  
  956. extern __asm __saveds void APIENTRY glGetIntegerv( register __d0 GLenum pname, register __a0 GLint *params );
  957.  
  958.  
  959. extern __asm __saveds void APIENTRY glPushAttrib( register __d0 GLbitfield mask );
  960.  
  961. extern __asm __saveds void APIENTRY glPopAttrib( void );
  962.  
  963.  
  964. extern __asm __saveds void APIENTRY glPushClientAttrib( register __d0 GLbitfield mask );
  965.  
  966. extern __asm __saveds void APIENTRY glPopClientAttrib( void );
  967.  
  968.  
  969. extern __asm __saveds GLint APIENTRY glRenderMode( register __d0 GLenum mode );
  970.  
  971. extern __asm __saveds GLenum APIENTRY glGetError( void );
  972.  
  973. extern __asm __saveds const GLubyte* APIENTRY glGetString( register __d0 GLenum name );
  974.  
  975. extern __asm __saveds void APIENTRY glFinish( void );
  976.  
  977. extern __asm __saveds void APIENTRY glFlush( void );
  978.  
  979. extern __asm __saveds void APIENTRY glHint( register __d0 GLenum target, register __d1 GLenum mode );
  980.  
  981.  
  982.  
  983. /*
  984.  * Depth Buffer
  985.  */
  986.  
  987. extern __asm __saveds void APIENTRY glClearDepth( register __fp0 GLclampd depth );
  988.  
  989. extern __asm __saveds void APIENTRY glDepthFunc( register __d0 GLenum func );
  990.  
  991. extern __asm __saveds void APIENTRY glDepthMask( register __d0 GLboolean flag );
  992.  
  993. extern __asm __saveds void APIENTRY glDepthRange( register __fp0 GLclampd near_val, register __fp1 GLclampd far_val );
  994.  
  995.  
  996. /*
  997.  * Accumulation Buffer
  998.  */
  999.  
  1000. extern __asm __saveds void APIENTRY glClearAccum( register __fp0 GLfloat red, register __fp1 GLfloat green,
  1001.                                                   register __fp2 GLfloat blue, register __fp3 GLfloat alpha );
  1002.  
  1003. extern __asm __saveds void APIENTRY glAccum( register __d0 GLenum op, register __fp0 GLfloat value );
  1004.  
  1005.  
  1006.  
  1007. /*
  1008.  * Transformation
  1009.  */
  1010.  
  1011. extern __asm __saveds void APIENTRY glMatrixMode( register __d0 GLenum mode );
  1012.  
  1013. extern __asm __saveds void APIENTRY glOrtho( register __fp0 GLdouble left, register __fp1 GLdouble right,
  1014.                                              register __fp2 GLdouble bottom, register __fp3 GLdouble top,
  1015.                                              register __fp4 GLdouble near_val, register __fp5 GLdouble far_val );
  1016.  
  1017. extern __asm __saveds void APIENTRY glFrustum( register __fp0 GLdouble left, register __fp1 GLdouble right,
  1018.                                                register __fp2 GLdouble bottom, register __fp3 GLdouble top,
  1019.                                                register __fp4 GLdouble near_val, register __fp5 GLdouble far_val );
  1020.  
  1021. extern __asm __saveds void APIENTRY glViewport( register __d0 GLint x, register __d1 GLint y,
  1022.                                                 register __d2 GLsizei width, register __d3 GLsizei height );
  1023.  
  1024. extern __asm __saveds void APIENTRY glPushMatrix( void );
  1025.  
  1026. extern __asm __saveds void APIENTRY glPopMatrix( void );
  1027.  
  1028. extern __asm __saveds void APIENTRY glLoadIdentity( void );
  1029.  
  1030. extern __asm __saveds void APIENTRY glLoadMatrixd( register __a0 const GLdouble *m );
  1031. extern __asm __saveds void APIENTRY glLoadMatrixf( register __a0 const GLfloat *m );
  1032.  
  1033. extern __asm __saveds void APIENTRY glMultMatrixd( register __a0 const GLdouble *m );
  1034. extern __asm __saveds void APIENTRY glMultMatrixf( register __a0 const GLfloat *m );
  1035.  
  1036. extern __asm __saveds void APIENTRY glRotated( register __fp0 GLdouble angle,
  1037.                                                register __fp1 GLdouble x, register __fp2 GLdouble y, register __fp3 GLdouble z );
  1038. extern __asm __saveds void APIENTRY glRotatef( register __fp0 GLfloat angle,
  1039.                                                register __fp1 GLfloat x, register __fp2 GLfloat y, register __fp3 GLfloat z );
  1040.  
  1041. extern __asm __saveds void APIENTRY glScaled( register __fp0 GLdouble x, register __fp1 GLdouble y, register __fp2 GLdouble z );
  1042. extern __asm __saveds void APIENTRY glScalef( register __fp0 GLfloat x, register __fp1 GLfloat y, register __fp2 GLfloat z );
  1043.  
  1044. extern __asm __saveds void APIENTRY glTranslated( register __fp0 GLdouble x, register __fp1 GLdouble y, register __fp2 GLdouble z );
  1045. extern __asm __saveds void APIENTRY glTranslatef( register __fp0 GLfloat x, register __fp1 GLfloat y, register __fp2 GLfloat z );
  1046.  
  1047.  
  1048.  
  1049. /*
  1050.  * Display Lists
  1051.  */
  1052.  
  1053. extern __asm __saveds GLboolean APIENTRY glIsList( register __d0 GLuint list );
  1054.  
  1055. extern __asm __saveds void APIENTRY glDeleteLists( register __d0 GLuint list, register __d1 GLsizei range );
  1056.  
  1057. extern __asm __saveds GLuint APIENTRY glGenLists( register __d0 GLsizei range );
  1058.  
  1059. extern __asm __saveds void APIENTRY glNewList( register __d0 GLuint list, register __d1 GLenum mode );
  1060.  
  1061. extern __asm __saveds void APIENTRY glEndList( void );
  1062.  
  1063. extern __asm __saveds void APIENTRY glCallList( register __d0 GLuint list );
  1064.  
  1065. extern __asm __saveds void APIENTRY glCallLists( register __d0 GLsizei n, register __d1 GLenum type,
  1066.                                                  register __a0 const GLvoid *lists );
  1067.  
  1068. extern __asm __saveds void APIENTRY glListBase( register __d0 GLuint base );
  1069.  
  1070.  
  1071.  
  1072. /*
  1073.  * Drawing Functions
  1074.  */
  1075.  
  1076. extern __asm __saveds void APIENTRY glBegin( register __d0 GLenum mode );
  1077.  
  1078. extern __asm __saveds void APIENTRY glEnd( void );
  1079.  
  1080.  
  1081. extern __asm __saveds void APIENTRY glVertex2d( register __fp0 GLdouble x, register __fp1 GLdouble y );
  1082. extern __asm __saveds void APIENTRY glVertex2f( register __fp0 GLfloat x, register __fp1 GLfloat y );
  1083. extern __asm __saveds void APIENTRY glVertex2i( register __d0 GLint x, register __d1 GLint y );
  1084. extern __asm __saveds void APIENTRY glVertex2s( register __d0 GLshort x, register __d1 GLshort y );
  1085.  
  1086. extern __asm __saveds void APIENTRY glVertex3d( register __fp0 GLdouble x, register __fp1 GLdouble y, register __fp2 GLdouble z );
  1087. extern __asm __saveds void APIENTRY glVertex3f( register __fp0 GLfloat x, register __fp1 GLfloat y, register __fp2 GLfloat z );
  1088. extern __asm __saveds void APIENTRY glVertex3i( register __d0 GLint x, register __d1 GLint y, register __d2 GLint z );
  1089. extern __asm __saveds void APIENTRY glVertex3s( register __d0 GLshort x, register __d1 GLshort y, register __d2 GLshort z );
  1090.  
  1091. extern __asm __saveds void APIENTRY glVertex4d( register __fp0 GLdouble x, register __fp1 GLdouble y, register __fp2 GLdouble z, register __fp3 GLdouble w );
  1092. extern __asm __saveds void APIENTRY glVertex4f( register __fp0 GLfloat x, register __fp1 GLfloat y, register __fp2 GLfloat z, register __fp3 GLfloat w );
  1093. extern __asm __saveds void APIENTRY glVertex4i( register __d0 GLint x, register __d1 GLint y, register __d2 GLint z, register __d3 GLint w );
  1094. extern __asm __saveds void APIENTRY glVertex4s( register __d0 GLshort x, register __d1 GLshort y, register __d2 GLshort z, register __d3 GLshort w );
  1095.  
  1096. extern __asm __saveds void APIENTRY glVertex2dv( register __a0 const GLdouble *v );
  1097. extern __asm __saveds void APIENTRY glVertex2fv( register __a0 const GLfloat *v );
  1098. extern __asm __saveds void APIENTRY glVertex2iv( register __a0 const GLint *v );
  1099. extern __asm __saveds void APIENTRY glVertex2sv( register __a0 const GLshort *v );
  1100.  
  1101. extern __asm __saveds void APIENTRY glVertex3dv( register __a0 const GLdouble *v );
  1102. extern __asm __saveds void APIENTRY glVertex3fv( register __a0 const GLfloat *v );
  1103. extern __asm __saveds void APIENTRY glVertex3iv( register __a0 const GLint *v );
  1104. extern __asm __saveds void APIENTRY glVertex3sv( register __a0 const GLshort *v );
  1105.  
  1106. extern __asm __saveds void APIENTRY glVertex4dv( register __a0 const GLdouble *v );
  1107. extern __asm __saveds void APIENTRY glVertex4fv( register __a0 const GLfloat *v );
  1108. extern __asm __saveds void APIENTRY glVertex4iv( register __a0 const GLint *v );
  1109. extern __asm __saveds void APIENTRY glVertex4sv( register __a0 const GLshort *v );
  1110.  
  1111.  
  1112. extern __asm __saveds void APIENTRY glNormal3b( register __d0 GLbyte nx, register __d1 GLbyte ny, register __d2 GLbyte nz );
  1113. extern __asm __saveds void APIENTRY glNormal3d( register __fp0 GLdouble nx, register __fp1 GLdouble ny, register __fp2 GLdouble nz );
  1114. extern __asm __saveds void APIENTRY glNormal3f( register __fp0 GLfloat nx, register __fp1 GLfloat ny, register __fp2 GLfloat nz );
  1115. extern __asm __saveds void APIENTRY glNormal3i( register __d0 GLint nx, register __d1 GLint ny, register __d2 GLint nz );
  1116. extern __asm __saveds void APIENTRY glNormal3s( register __d0 GLshort nx, register __d1 GLshort ny, register __d2 GLshort nz );
  1117.  
  1118. extern __asm __saveds void APIENTRY glNormal3bv( register __a0 const GLbyte *v );
  1119. extern __asm __saveds void APIENTRY glNormal3dv( register __a0 const GLdouble *v );
  1120. extern __asm __saveds void APIENTRY glNormal3fv( register __a0 const GLfloat *v );
  1121. extern __asm __saveds void APIENTRY glNormal3iv( register __a0 const GLint *v );
  1122. extern __asm __saveds void APIENTRY glNormal3sv( register __a0 const GLshort *v );
  1123.  
  1124.  
  1125. extern __asm __saveds void APIENTRY glIndexd( register __fp0 GLdouble c );
  1126. extern __asm __saveds void APIENTRY glIndexf( register __fp0 GLfloat c );
  1127. extern __asm __saveds void APIENTRY glIndexi( register __d0 GLint c );
  1128. extern __asm __saveds void APIENTRY glIndexs( register __d0 GLshort c );
  1129. extern __asm __saveds void APIENTRY glIndexub( register __d0 GLubyte c );
  1130.  
  1131. extern __asm __saveds void APIENTRY glIndexdv( register __a0 const GLdouble *c );
  1132. extern __asm __saveds void APIENTRY glIndexfv( register __a0 const GLfloat *c );
  1133. extern __asm __saveds void APIENTRY glIndexiv( register __a0 const GLint *c );
  1134. extern __asm __saveds void APIENTRY glIndexsv( register __a0 const GLshort *c );
  1135. extern __asm __saveds void APIENTRY glIndexubv( register __a0 const GLubyte *c );
  1136.  
  1137. extern __asm __saveds void APIENTRY glColor3b( register __d0 GLbyte red, register __d1 GLbyte green, register __d2 GLbyte blue );
  1138. extern __asm __saveds void APIENTRY glColor3d( register __fp0 GLdouble red, register __fp1 GLdouble green, register __fp2 GLdouble blue );
  1139. extern __asm __saveds void APIENTRY glColor3f( register __fp0 GLfloat red, register __fp1 GLfloat green, register __fp2 GLfloat blue );
  1140. extern __asm __saveds void APIENTRY glColor3i( register __d0 GLint red, register __d1 GLint green, register __d2 GLint blue );
  1141. extern __asm __saveds void APIENTRY glColor3s( register __d0 GLshort red, register __d1 GLshort green, register __d2 GLshort blue );
  1142. extern __asm __saveds void APIENTRY glColor3ub( register __d0 GLubyte red, register __d1 GLubyte green, register __d2 GLubyte blue );
  1143. extern __asm __saveds void APIENTRY glColor3ui( register __d0 GLuint red, register __d1 GLuint green, register __d2 GLuint blue );
  1144. extern __asm __saveds void APIENTRY glColor3us( register __d0 GLushort red, register __d1 GLushort green, register __d2 GLushort blue );
  1145.  
  1146. extern __asm __saveds void APIENTRY glColor4b( register __d0 GLbyte red, register __d1 GLbyte green, register __d2 GLbyte blue, register __d3 GLbyte alpha );
  1147. extern __asm __saveds void APIENTRY glColor4d( register __fp0 GLdouble red, register __fp1 GLdouble green,
  1148.                                                register __fp2 GLdouble blue, register __fp3 GLdouble alpha );
  1149. extern __asm __saveds void APIENTRY glColor4f( register __fp0 GLfloat red, register __fp1 GLfloat green,
  1150.                                                register __fp2 GLfloat blue, register __fp3 GLfloat alpha );
  1151. extern __asm __saveds void APIENTRY glColor4i( register __d0 GLint red, register __d1 GLint green, register __d2 GLint blue, register __d3 GLint alpha );
  1152. extern __asm __saveds void APIENTRY glColor4s( register __d0 GLshort red, register __d1 GLshort green,
  1153.                                                register __d2 GLshort blue, register __d3 GLshort alpha );
  1154. extern __asm __saveds void APIENTRY glColor4ub( register __d0 GLubyte red, register __d1 GLubyte green,
  1155.                                                 register __d2 GLubyte blue, register __d3 GLubyte alpha );
  1156. extern __asm __saveds void APIENTRY glColor4ui( register __d0 GLuint red, register __d1 GLuint green, register __d2 GLuint blue, register __d3 GLuint alpha );
  1157. extern __asm __saveds void APIENTRY glColor4us( register __d0 GLushort red, register __d1 GLushort green,
  1158.                                                 register __d2 GLushort blue, register __d3 GLushort alpha );
  1159.  
  1160.  
  1161. extern __asm __saveds void APIENTRY glColor3bv( register __a0 const GLbyte *v );
  1162. extern __asm __saveds void APIENTRY glColor3dv( register __a0 const GLdouble *v );
  1163. extern __asm __saveds void APIENTRY glColor3fv( register __a0 const GLfloat *v );
  1164. extern __asm __saveds void APIENTRY glColor3iv( register __a0 const GLint *v );
  1165. extern __asm __saveds void APIENTRY glColor3sv( register __a0 const GLshort *v );
  1166. extern __asm __saveds void APIENTRY glColor3ubv( register __a0 const GLubyte *v );
  1167. extern __asm __saveds void APIENTRY glColor3uiv( register __a0 const GLuint *v );
  1168. extern __asm __saveds void APIENTRY glColor3usv( register __a0 const GLushort *v );
  1169.  
  1170. extern __asm __saveds void APIENTRY glColor4bv( register __a0 const GLbyte *v );
  1171. extern __asm __saveds void APIENTRY glColor4dv( register __a0 const GLdouble *v );
  1172. extern __asm __saveds void APIENTRY glColor4fv( register __a0 const GLfloat *v );
  1173. extern __asm __saveds void APIENTRY glColor4iv( register __a0 const GLint *v );
  1174. extern __asm __saveds void APIENTRY glColor4sv( register __a0 const GLshort *v );
  1175. extern __asm __saveds void APIENTRY glColor4ubv( register __a0 const GLubyte *v );
  1176. extern __asm __saveds void APIENTRY glColor4uiv( register __a0 const GLuint *v );
  1177. extern __asm __saveds void APIENTRY glColor4usv( register __a0 const GLushort *v );
  1178.  
  1179.  
  1180. extern __asm __saveds void APIENTRY glTexCoord1d( register __fp0 GLdouble s );
  1181. extern __asm __saveds void APIENTRY glTexCoord1f( register __fp0 GLfloat s );
  1182. extern __asm __saveds void APIENTRY glTexCoord1i( register __d0 GLint s );
  1183. extern __asm __saveds void APIENTRY glTexCoord1s( register __d0 GLshort s );
  1184.  
  1185. extern __asm __saveds void APIENTRY glTexCoord2d( register __fp0 GLdouble s, register __fp1 GLdouble t );
  1186. extern __asm __saveds void APIENTRY glTexCoord2f( register __fp0 GLfloat s, register __fp1 GLfloat t );
  1187. extern __asm __saveds void APIENTRY glTexCoord2i( register __d0 GLint s, register __d1 GLint t );
  1188. extern __asm __saveds void APIENTRY glTexCoord2s( register __d0 GLshort s, register __d1 GLshort t );
  1189.  
  1190. extern __asm __saveds void APIENTRY glTexCoord3d( register __fp0 GLdouble s, register __fp1 GLdouble t, register __fp2 GLdouble r );
  1191. extern __asm __saveds void APIENTRY glTexCoord3f( register __fp0 GLfloat s, register __fp1 GLfloat t, register __fp2 GLfloat r );
  1192. extern __asm __saveds void APIENTRY glTexCoord3i( register __d0 GLint s, register __d1 GLint t, register __d2 GLint r );
  1193. extern __asm __saveds void APIENTRY glTexCoord3s( register __d0 GLshort s, register __d1 GLshort t, register __d2 GLshort r );
  1194.  
  1195. extern __asm __saveds void APIENTRY glTexCoord4d( register __fp0 GLdouble s, register __fp1 GLdouble t, register __fp2 GLdouble r, register __fp3 GLdouble q );
  1196. extern __asm __saveds void APIENTRY glTexCoord4f( register __fp0 GLfloat s, register __fp1 GLfloat t, register __fp2 GLfloat r, register __fp3 GLfloat q );
  1197. extern __asm __saveds void APIENTRY glTexCoord4i( register __d0 GLint s, register __d1 GLint t, register __d2 GLint r, register __d3 GLint q );
  1198. extern __asm __saveds void APIENTRY glTexCoord4s( register __d0 GLshort s, register __d1 GLshort t, register __d2 GLshort r, register __d3 GLshort q );
  1199.  
  1200. extern __asm __saveds void APIENTRY glTexCoord1dv( register __a0 const GLdouble *v );
  1201. extern __asm __saveds void APIENTRY glTexCoord1fv( register __a0 const GLfloat *v );
  1202. extern __asm __saveds void APIENTRY glTexCoord1iv( register __a0 const GLint *v );
  1203. extern __asm __saveds void APIENTRY glTexCoord1sv( register __a0 const GLshort *v );
  1204.  
  1205. extern __asm __saveds void APIENTRY glTexCoord2dv( register __a0 const GLdouble *v );
  1206. extern __asm __saveds void APIENTRY glTexCoord2fv( register __a0 const GLfloat *v );
  1207. extern __asm __saveds void APIENTRY glTexCoord2iv( register __a0 const GLint *v );
  1208. extern __asm __saveds void APIENTRY glTexCoord2sv( register __a0 const GLshort *v );
  1209.  
  1210. extern __asm __saveds void APIENTRY glTexCoord3dv( register __a0 const GLdouble *v );
  1211. extern __asm __saveds void APIENTRY glTexCoord3fv( register __a0 const GLfloat *v );
  1212. extern __asm __saveds void APIENTRY glTexCoord3iv( register __a0 const GLint *v );
  1213. extern __asm __saveds void APIENTRY glTexCoord3sv( register __a0 const GLshort *v );
  1214.  
  1215. extern __asm __saveds void APIENTRY glTexCoord4dv( register __a0 const GLdouble *v );
  1216. extern __asm __saveds void APIENTRY glTexCoord4fv( register __a0 const GLfloat *v );
  1217. extern __asm __saveds void APIENTRY glTexCoord4iv( register __a0 const GLint *v );
  1218. extern __asm __saveds void APIENTRY glTexCoord4sv( register __a0 const GLshort *v );
  1219.  
  1220.  
  1221. extern __asm __saveds void APIENTRY glRasterPos2d( register __fp0 GLdouble x, register __fp1 GLdouble y );
  1222. extern __asm __saveds void APIENTRY glRasterPos2f( register __fp0 GLfloat x, register __fp1 GLfloat y );
  1223. extern __asm __saveds void APIENTRY glRasterPos2i( register __d0 GLint x, register __d1 GLint y );
  1224. extern __asm __saveds void APIENTRY glRasterPos2s( register __d0 GLshort x, register __d1 GLshort y );
  1225.  
  1226. extern __asm __saveds void APIENTRY glRasterPos3d( register __fp0 GLdouble x, register __fp1 GLdouble y, register __fp2 GLdouble z );
  1227. extern __asm __saveds void APIENTRY glRasterPos3f( register __fp0 GLfloat x, register __fp1 GLfloat y, register __fp2 GLfloat z );
  1228. extern __asm __saveds void APIENTRY glRasterPos3i( register __d0 GLint x, register __d1 GLint y, register __d2 GLint z );
  1229. extern __asm __saveds void APIENTRY glRasterPos3s( register __d0 GLshort x, register __d1 GLshort y, register __d2 GLshort z );
  1230.  
  1231. extern __asm __saveds void APIENTRY glRasterPos4d( register __fp0 GLdouble x, register __fp1 GLdouble y, register __fp2 GLdouble z, register __fp3 GLdouble w );
  1232. extern __asm __saveds void APIENTRY glRasterPos4f( register __fp0 GLfloat x, register __fp1 GLfloat y, register __fp2 GLfloat z, register __fp3 GLfloat w );
  1233. extern __asm __saveds void APIENTRY glRasterPos4i( register __d0 GLint x, register __d1 GLint y, register __d2 GLint z, register __d3 GLint w );
  1234. extern __asm __saveds void APIENTRY glRasterPos4s( register __d0 GLshort x, register __d1 GLshort y, register __d2 GLshort z, register __d3 GLshort w );
  1235.  
  1236. extern __asm __saveds void APIENTRY glRasterPos2dv( register __a0 const GLdouble *v );
  1237. extern __asm __saveds void APIENTRY glRasterPos2fv( register __a0 const GLfloat *v );
  1238. extern __asm __saveds void APIENTRY glRasterPos2iv( register __a0 const GLint *v );
  1239. extern __asm __saveds void APIENTRY glRasterPos2sv( register __a0 const GLshort *v );
  1240.  
  1241. extern __asm __saveds void APIENTRY glRasterPos3dv( register __a0 const GLdouble *v );
  1242. extern __asm __saveds void APIENTRY glRasterPos3fv( register __a0 const GLfloat *v );
  1243. extern __asm __saveds void APIENTRY glRasterPos3iv( register __a0 const GLint *v );
  1244. extern __asm __saveds void APIENTRY glRasterPos3sv( register __a0 const GLshort *v );
  1245.  
  1246. extern __asm __saveds void APIENTRY glRasterPos4dv( register __a0 const GLdouble *v );
  1247. extern __asm __saveds void APIENTRY glRasterPos4fv( register __a0 const GLfloat *v );
  1248. extern __asm __saveds void APIENTRY glRasterPos4iv( register __a0 const GLint *v );
  1249. extern __asm __saveds void APIENTRY glRasterPos4sv( register __a0 const GLshort *v );
  1250.  
  1251.  
  1252. extern __asm __saveds void APIENTRY glRectd( register __fp0 GLdouble x1, register __fp1 GLdouble y1, register __fp2 GLdouble x2, register __fp3 GLdouble y2 );
  1253. extern __asm __saveds void APIENTRY glRectf( register __fp0 GLfloat x1, register __fp1 GLfloat y1, register __fp2 GLfloat x2, register __fp3 GLfloat y2 );
  1254. extern __asm __saveds void APIENTRY glRecti( register __d0 GLint x1, register __d1 GLint y1, register __d2 GLint x2, register __d3 GLint y2 );
  1255. extern __asm __saveds void APIENTRY glRects( register __d0 GLshort x1, register __d1 GLshort y1, register __d2 GLshort x2, register __d3 GLshort y2 );
  1256.  
  1257.  
  1258. extern __asm __saveds void APIENTRY glRectdv( register __a0 const GLdouble *v1, register __a1 const GLdouble *v2 );
  1259. extern __asm __saveds void APIENTRY glRectfv( register __a0 const GLfloat *v1, register __a1 const GLfloat *v2 );
  1260. extern __asm __saveds void APIENTRY glRectiv( register __a0 const GLint *v1, register __a1 const GLint *v2 );
  1261. extern __asm __saveds void APIENTRY glRectsv( register __a0 const GLshort *v1, register __a1 const GLshort *v2 );
  1262.  
  1263.  
  1264.  
  1265. /*
  1266.  * Vertex Arrays  (1.1)
  1267.  */
  1268.  
  1269. extern __asm __saveds void APIENTRY glVertexPointer( register __d0 GLint size, register __d1 GLenum type, register __d2 GLsizei stride,
  1270.                                                      register __a0 const GLvoid *ptr );
  1271.  
  1272. extern __asm __saveds void APIENTRY glNormalPointer( register __d0 GLenum type, register __d1 GLsizei stride,
  1273.                                                      register __a0 const GLvoid *ptr );
  1274.  
  1275. extern __asm __saveds void APIENTRY glColorPointer( register __d0 GLint size, register __d1 GLenum type, register __d2 GLsizei stride,
  1276.                                                     register __a0 const GLvoid *ptr );
  1277.  
  1278. extern __asm __saveds void APIENTRY glIndexPointer( register __d0 GLenum type, register __d1 GLsizei stride, register __a0 const GLvoid *ptr );
  1279.  
  1280. extern __asm __saveds void APIENTRY glTexCoordPointer( register __d0 GLint size, register __d1 GLenum type, register __d2 GLsizei stride,
  1281.                                                        register __a0 const GLvoid *ptr );
  1282.  
  1283. extern __asm __saveds void APIENTRY glEdgeFlagPointer( register __d0 GLsizei stride, register __a0 const GLboolean *ptr );
  1284.  
  1285. extern __asm __saveds void APIENTRY glGetPointerv( register __d0 GLenum pname, register __a0 void **params );
  1286.  
  1287. extern __asm __saveds void APIENTRY glArrayElement( register __d0 GLint i );
  1288.  
  1289. extern __asm __saveds void APIENTRY glDrawArrays( register __d0 GLenum mode, register __d1 GLint first, register __d2 GLsizei count );
  1290.  
  1291. extern __asm __saveds void APIENTRY glDrawElements( register __d0 GLenum mode, register __d1 GLsizei count,
  1292.                                                     register __d2 GLenum type, register __a0 const GLvoid *indices );
  1293.  
  1294. extern __asm __saveds void APIENTRY glInterleavedArrays( register __d0 GLenum format, register __d1 GLsizei stride,
  1295.                                                          register __a0 const GLvoid *pointer );
  1296.  
  1297.  
  1298. /*
  1299.  * Lighting
  1300.  */
  1301.  
  1302. extern __asm __saveds void APIENTRY glShadeModel( register __d0 GLenum mode );
  1303.  
  1304. extern __asm __saveds void APIENTRY glLightf( register __d0 GLenum light, register __d1 GLenum pname, register __fp0 GLfloat param );
  1305. extern __asm __saveds void APIENTRY glLighti( register __d0 GLenum light, register __d1 GLenum pname, register __d2 GLint param );
  1306. extern __asm __saveds void APIENTRY glLightfv( register __d0 GLenum light, register __d1 GLenum pname, register __a0 const GLfloat *params );
  1307. extern __asm __saveds void APIENTRY glLightiv( register __d0 GLenum light, register __d1 GLenum pname, register __a0 const GLint *params );
  1308.  
  1309. extern __asm __saveds void APIENTRY glGetLightfv( register __d0 GLenum light, register __d1 GLenum pname, register __a0 GLfloat *params );
  1310. extern __asm __saveds void APIENTRY glGetLightiv( register __d0 GLenum light, register __d1 GLenum pname, register __a0 GLint *params );
  1311.  
  1312. extern __asm __saveds void APIENTRY glLightModelf( register __d0 GLenum pname, register __fp0 GLfloat param );
  1313. extern __asm __saveds void APIENTRY glLightModeli( register __d0 GLenum pname, register __d1 GLint param );
  1314. extern __asm __saveds void APIENTRY glLightModelfv( register __d0 GLenum pname, register __a0 const GLfloat *params );
  1315. extern __asm __saveds void APIENTRY glLightModeliv( register __d0 GLenum pname, register __a0 const GLint *params );
  1316.  
  1317. extern __asm __saveds void APIENTRY glMaterialf( register __d0 GLenum face, register __d1 GLenum pname, register __fp0 GLfloat param );
  1318. extern __asm __saveds void APIENTRY glMateriali( register __d0 GLenum face, register __d1 GLenum pname, register __d2 GLint param );
  1319. extern __asm __saveds void APIENTRY glMaterialfv( register __d0 GLenum face, register __d1 GLenum pname, register __a0 const GLfloat *params );
  1320. extern __asm __saveds void APIENTRY glMaterialiv( register __d0 GLenum face, register __d1 GLenum pname, register __a0 const GLint *params );
  1321.  
  1322. extern __asm __saveds void APIENTRY glGetMaterialfv( register __d0 GLenum face, register __d1 GLenum pname, register __a0 GLfloat *params );
  1323. extern __asm __saveds void APIENTRY glGetMaterialiv( register __d0 GLenum face, register __d1 GLenum pname, register __a0 GLint *params );
  1324.  
  1325. extern __asm __saveds void APIENTRY glColorMaterial( register __d0 GLenum face, register __d1 GLenum mode );
  1326.  
  1327.  
  1328.  
  1329.  
  1330. /*
  1331.  * Raster functions
  1332.  */
  1333.  
  1334. extern __asm __saveds void APIENTRY glPixelZoom( register __fp0 GLfloat xfactor, register __fp1 GLfloat yfactor );
  1335.  
  1336. extern __asm __saveds void APIENTRY glPixelStoref( register __d0 GLenum pname, register __fp0 GLfloat param );
  1337. extern __asm __saveds void APIENTRY glPixelStorei( register __d0 GLenum pname, register __d1 GLint param );
  1338.  
  1339. extern __asm __saveds void APIENTRY glPixelTransferf( register __d0 GLenum pname, register __fp0 GLfloat param );
  1340. extern __asm __saveds void APIENTRY glPixelTransferi( register __d0 GLenum pname, register __d1 GLint param );
  1341.  
  1342. extern __asm __saveds void APIENTRY glPixelMapfv( register __d0 GLenum map, register __d1 GLint mapsize,
  1343.                                                   register __a0 const GLfloat *values );
  1344. extern __asm __saveds void APIENTRY glPixelMapuiv( register __d0 GLenum map, register __d1 GLint mapsize,
  1345.                                                    register __a0 const GLuint *values );
  1346. extern __asm __saveds void APIENTRY glPixelMapusv( register __d0 GLenum map, register __d1 GLint mapsize,
  1347.                                                    register __a0 const GLushort *values );
  1348.  
  1349. extern __asm __saveds void APIENTRY glGetPixelMapfv( register __d0 GLenum map, register __a0 GLfloat *values );
  1350. extern __asm __saveds void APIENTRY glGetPixelMapuiv( register __d0 GLenum map, register __a0 GLuint *values );
  1351. extern __asm __saveds void APIENTRY glGetPixelMapusv( register __d0 GLenum map, register __a0 GLushort *values );
  1352.  
  1353. extern __asm __saveds void APIENTRY glBitmap( register __d0 GLsizei width, register __d1 GLsizei height,
  1354.                                               register __fp0 GLfloat xorig, register __fp1 GLfloat yorig,
  1355.                                               register __fp2 GLfloat xmove, register __fp3 GLfloat ymove,
  1356.                                               register __a0 const GLubyte *bitmap );
  1357.  
  1358. extern __asm __saveds void APIENTRY glReadPixels( register __d0 GLint x, register __d1 GLint y,
  1359.                                                   register __d2 GLsizei width, register __d3 GLsizei height,
  1360.                                                   register __d4 GLenum format, register __d5 GLenum type,
  1361.                                                   register __a0 GLvoid *pixels );
  1362.  
  1363. extern __asm __saveds void APIENTRY glDrawPixels( register __d0 GLsizei width, register __d1 GLsizei height,
  1364.                                                   register __d2 GLenum format, register __d3 GLenum type,
  1365.                                                   register __a0 const GLvoid *pixels );
  1366.  
  1367. extern __asm __saveds void APIENTRY glCopyPixels( register __d0 GLint x, register __d1 GLint y,
  1368.                                                   register __d2 GLsizei width, register __d3 GLsizei height,
  1369.                                                   register __d4 GLenum type );
  1370.  
  1371.  
  1372.  
  1373. /*
  1374.  * Stenciling
  1375.  */
  1376.  
  1377. extern __asm __saveds void APIENTRY glStencilFunc( register __d0 GLenum func, register __d1 GLint ref, register __d2 GLuint mask );
  1378.  
  1379. extern __asm __saveds void APIENTRY glStencilMask( register __d0 GLuint mask );
  1380.  
  1381. extern __asm __saveds void APIENTRY glStencilOp( register __d0 GLenum fail, register __d1 GLenum zfail, register __d2 GLenum zpass );
  1382.  
  1383. extern __asm __saveds void APIENTRY glClearStencil( register __d0 GLint s );
  1384.  
  1385.  
  1386.  
  1387. /*
  1388.  * Texture mapping
  1389.  */
  1390.  
  1391. extern __asm __saveds void APIENTRY glTexGend( register __d0 GLenum coord, register __d1 GLenum pname, register __fp0 GLdouble param );
  1392. extern __asm __saveds void APIENTRY glTexGenf( register __d0 GLenum coord, register __d1 GLenum pname, register __fp0 GLfloat param );
  1393. extern __asm __saveds void APIENTRY glTexGeni( register __d0 GLenum coord, register __d1 GLenum pname, register __d2 GLint param );
  1394.  
  1395. extern __asm __saveds void APIENTRY glTexGendv( register __d0 GLenum coord, register __d1 GLenum pname, register __a0 const GLdouble *params );
  1396. extern __asm __saveds void APIENTRY glTexGenfv( register __d0 GLenum coord, register __d1 GLenum pname, register __a0 const GLfloat *params );
  1397. extern __asm __saveds void APIENTRY glTexGeniv( register __d0 GLenum coord, register __d1 GLenum pname, register __a0 const GLint *params );
  1398.  
  1399. extern __asm __saveds void APIENTRY glGetTexGendv( register __d0 GLenum coord, register __d1 GLenum pname, register __a0 GLdouble *params );
  1400. extern __asm __saveds void APIENTRY glGetTexGenfv( register __d0 GLenum coord, register __d1 GLenum pname, register __a0 GLfloat *params );
  1401. extern __asm __saveds void APIENTRY glGetTexGeniv( register __d0 GLenum coord, register __d1 GLenum pname, register __a0 GLint *params );
  1402.  
  1403.  
  1404. extern __asm __saveds void APIENTRY glTexEnvf( register __d0 GLenum target, register __d1 GLenum pname, register __fp0 GLfloat param );
  1405. extern __asm __saveds void APIENTRY glTexEnvi( register __d0 GLenum target, register __d1 GLenum pname, register __d2 GLint param );
  1406.  
  1407. extern __asm __saveds void APIENTRY glTexEnvfv( register __d0 GLenum target, register __d1 GLenum pname, register __a0 const GLfloat *params );
  1408. extern __asm __saveds void APIENTRY glTexEnviv( register __d0 GLenum target, register __d1 GLenum pname, register __a0 const GLint *params );
  1409.  
  1410. extern __asm __saveds void APIENTRY glGetTexEnvfv( register __d0 GLenum target, register __d1 GLenum pname, register __a0 GLfloat *params );
  1411. extern __asm __saveds void APIENTRY glGetTexEnviv( register __d0 GLenum target, register __d1 GLenum pname, register __a0 GLint *params );
  1412.  
  1413.  
  1414. extern __asm __saveds void APIENTRY glTexParameterf( register __d0 GLenum target, register __d1 GLenum pname, register __fp0 GLfloat param );
  1415. extern __asm __saveds void APIENTRY glTexParameteri( register __d0 GLenum target, register __d1 GLenum pname, register __d2 GLint param );
  1416.  
  1417. extern __asm __saveds void APIENTRY glTexParameterfv( register __d0 GLenum target, register __d1 GLenum pname,
  1418.                                                       register __a0 const GLfloat *params );
  1419. extern __asm __saveds void APIENTRY glTexParameteriv( register __d0 GLenum target, register __d1 GLenum pname,
  1420.                                                       register __a0 const GLint *params );
  1421.  
  1422. extern __asm __saveds void APIENTRY glGetTexParameterfv( register __d0 GLenum target,
  1423.                                                          register __d1 GLenum pname, register __a0 GLfloat *params );
  1424. extern __asm __saveds void APIENTRY glGetTexParameteriv( register __d0 GLenum target,
  1425.                                                          register __d1 GLenum pname, register __a0 GLint *params );
  1426.  
  1427. extern __asm __saveds void APIENTRY glGetTexLevelParameterfv( register __d0 GLenum target, register __d1 GLint level,
  1428.                                                               register __d2 GLenum pname, register __a0 GLfloat *params );
  1429. extern __asm __saveds void APIENTRY glGetTexLevelParameteriv( register __d0 GLenum target, register __d1 GLint level,
  1430.                                                               register __d2 GLenum pname, register __a0 GLint *params );
  1431.  
  1432.  
  1433. extern __asm __saveds void APIENTRY glTexImage1D( register __d0 GLenum target, register __d1 GLint level,
  1434.                                                   register __d2 GLint internalFormat,
  1435.                                                   register __d3 GLsizei width, register __d4 GLint border,
  1436.                                                   register __d5 GLenum format, register __d6 GLenum type,
  1437.                                                   register __a0 const GLvoid *pixels );
  1438.  
  1439. extern __asm __saveds void APIENTRY glTexImage2D( register __d0 GLenum target, register __d1 GLint level,
  1440.                                                   register __d2 GLint internalFormat,
  1441.                                                   register __d3 GLsizei width, register __d4 GLsizei height,
  1442.                                                   register __d5 GLint border, register __d6 GLenum format, register __d7 GLenum type,
  1443.                                                   register __a0 const GLvoid *pixels );
  1444.  
  1445. extern __asm __saveds void APIENTRY glGetTexImage( register __d0 GLenum target, register __d1 GLint level,
  1446.                                                    register __d2 GLenum format, register __d3 GLenum type,
  1447.                                                    register __a0 GLvoid *pixels );
  1448.  
  1449.  
  1450.  
  1451. /* 1.1 functions */
  1452.  
  1453. extern __asm __saveds void APIENTRY glGenTextures( register __d0 GLsizei n, register __a0 GLuint *textures );
  1454.  
  1455. extern __asm __saveds void APIENTRY glDeleteTextures( register __d0 GLsizei n, register __a0 const GLuint *textures );
  1456.  
  1457. extern __asm __saveds void APIENTRY glBindTexture( register __d0 GLenum target, register __d1 GLuint texture );
  1458.  
  1459. extern __asm __saveds void APIENTRY glPrioritizeTextures( register __d0 GLsizei n,
  1460.                                                           register __a0 const GLuint *textures,
  1461.                                                           register __a1 const GLclampf *priorities );
  1462.  
  1463. extern __asm __saveds GLboolean APIENTRY glAreTexturesResident( register __d0 GLsizei n,
  1464.                                                                 register __a0 const GLuint *textures,
  1465.                                                                 register __a1 GLboolean *residences );
  1466.  
  1467. extern __asm __saveds GLboolean APIENTRY glIsTexture( register __d0 GLuint texture );
  1468.  
  1469.  
  1470. extern __asm __saveds void APIENTRY glTexSubImage1D( register __d0 GLenum target, register __d1 GLint level,
  1471.                                                      register __d2 GLint xoffset,
  1472.                                                      register __d3 GLsizei width, register __d4 GLenum format,
  1473.                                                      register __d5 GLenum type, register __a0 const GLvoid *pixels );
  1474.  
  1475.  
  1476. extern __asm __saveds void APIENTRY glTexSubImage2D( register __d0 GLenum target, register __d1 GLint level,
  1477.                                                      register __d2 GLint xoffset, register __d3 GLint yoffset,
  1478.                                                      register __d4 GLsizei width, register __d5 GLsizei height,
  1479.                                                      register __d6 GLenum format, register __d7 GLenum type,
  1480.                                                      register __a0 const GLvoid *pixels );
  1481.  
  1482.  
  1483. extern __asm __saveds void APIENTRY glCopyTexImage1D( register __d0 GLenum target, register __d1 GLint level,
  1484.                                                       register __d2 GLenum internalformat,
  1485.                                                       register __d3 GLint x, register __d4 GLint y,
  1486.                                                       register __d5 GLsizei width, register __d6 GLint border );
  1487.  
  1488.  
  1489. extern __asm __saveds void APIENTRY glCopyTexImage2D( register __d0 GLenum target, register __d1 GLint level,
  1490.                                                       register __d2 GLenum internalformat,
  1491.                                                       register __d3 GLint x, register __d4 GLint y,
  1492.                                                       register __d5 GLsizei width, register __d6 GLsizei height,
  1493.                                                       register __d7 GLint border );
  1494.  
  1495.  
  1496. extern __asm __saveds void APIENTRY glCopyTexSubImage1D( register __d0 GLenum target, register __d1 GLint level,
  1497.                                                          register __d2 GLint xoffset, register __d3 GLint x, register __d4 GLint y,
  1498.                                                          register __d5 GLsizei width );
  1499.  
  1500.  
  1501. extern __asm __saveds void APIENTRY glCopyTexSubImage2D( register __d0 GLenum target, register __d1 GLint level,
  1502.                                                          register __d2 GLint xoffset, register __d3 GLint yoffset,
  1503.                                                          register __d4 GLint x, register __d5 GLint y,
  1504.                                                          register __d6 GLsizei width, register __d7 GLsizei height );
  1505.  
  1506.  
  1507.  
  1508.  
  1509. /*
  1510.  * Evaluators
  1511.  */
  1512.  
  1513. extern __asm __saveds void APIENTRY glMap1d( register __d0 GLenum target, register __fp0 GLdouble u1, register __fp1 GLdouble u2,
  1514.                                              register __d1 GLint stride,
  1515.                                              register __d2 GLint order, register __a0 const GLdouble *points );
  1516. extern __asm __saveds void APIENTRY glMap1f( register __d0 GLenum target, register __fp0 GLfloat u1, register __fp1 GLfloat u2,
  1517.                                              register __d1 GLint stride,
  1518.                                              register __d2 GLint order, register __a0 const GLfloat *points );
  1519.  
  1520. extern __asm __saveds void APIENTRY glMap2d( register __d0 GLenum target,
  1521.                                              register __fp0 GLdouble u1, register __fp1 GLdouble u2, register __d1 GLint ustride, register __d2 GLint uorder,
  1522.                                              register __fp2 GLdouble v1, register __fp3 GLdouble v2, register __d3 GLint vstride, register __d4 GLint vorder,
  1523.                                              register __a0 const GLdouble *points );
  1524. extern __asm __saveds void APIENTRY glMap2f( register __d0 GLenum target,
  1525.                                              register __fp0 GLfloat u1, register __fp1 GLfloat u2, register __d1 GLint ustride, register __d2 GLint uorder,
  1526.                                              register __fp2 GLfloat v1, register __fp3 GLfloat v2, register __d3 GLint vstride, register __d4 GLint vorder,
  1527.                                              register __a0 const GLfloat *points );
  1528.  
  1529. extern __asm __saveds void APIENTRY glGetMapdv( register __d0 GLenum target, register __d1 GLenum query, register __a0 GLdouble *v );
  1530. extern __asm __saveds void APIENTRY glGetMapfv( register __d0 GLenum target, register __d1 GLenum query, register __a0 GLfloat *v );
  1531. extern __asm __saveds void APIENTRY glGetMapiv( register __d0 GLenum target, register __d1 GLenum query, register __a0 GLint *v );
  1532.  
  1533. extern __asm __saveds void APIENTRY glEvalCoord1d( register __fp0 GLdouble u );
  1534. extern __asm __saveds void APIENTRY glEvalCoord1f( register __fp0 GLfloat u );
  1535.  
  1536. extern __asm __saveds void APIENTRY glEvalCoord1dv( register __a0 const GLdouble *u );
  1537. extern __asm __saveds void APIENTRY glEvalCoord1fv( register __a0 const GLfloat *u );
  1538.  
  1539. extern __asm __saveds void APIENTRY glEvalCoord2d( register __fp0 GLdouble u, register __fp1 GLdouble v );
  1540. extern __asm __saveds void APIENTRY glEvalCoord2f( register __fp0 GLfloat u, register __fp1 GLfloat v );
  1541.  
  1542. extern __asm __saveds void APIENTRY glEvalCoord2dv( register __a0 const GLdouble *u );
  1543. extern __asm __saveds void APIENTRY glEvalCoord2fv( register __a0 const GLfloat *u );
  1544.  
  1545. extern __asm __saveds void APIENTRY glMapGrid1d( register __d0 GLint un, register __fp0 GLdouble u1, register __fp1 GLdouble u2 );
  1546. extern __asm __saveds void APIENTRY glMapGrid1f( register __d0 GLint un, register __fp0 GLfloat u1, register __fp1 GLfloat u2 );
  1547.  
  1548. extern __asm __saveds void APIENTRY glMapGrid2d( register __d0 GLint un, register __fp0 GLdouble u1, register __fp1 GLdouble u2,
  1549.                                                  register __d1 GLint vn, register __fp2 GLdouble v1, register __fp3 GLdouble v2 );
  1550. extern __asm __saveds void APIENTRY glMapGrid2f( register __d0 GLint un, register __fp0 GLfloat u1, register __fp1 GLfloat u2,
  1551.                                                  register __d1 GLint vn, register __fp2 GLfloat v1, register __fp3 GLfloat v2 );
  1552.  
  1553. extern __asm __saveds void APIENTRY glEvalPoint1( register __d0 GLint i );
  1554.  
  1555. extern __asm __saveds void APIENTRY glEvalPoint2( register __d0 GLint i, register __d1 GLint j );
  1556.  
  1557. extern __asm __saveds void APIENTRY glEvalMesh1( register __d0 GLenum mode, register __d1 GLint i1, register __d2 GLint i2 );
  1558.  
  1559. extern __asm __saveds void APIENTRY glEvalMesh2( register __d0 GLenum mode, register __d1 GLint i1, register __d2 GLint i2, register __d3 GLint j1, register __d4 GLint j2 );
  1560.  
  1561.  
  1562.  
  1563. /*
  1564.  * Fog
  1565.  */
  1566.  
  1567. extern __asm __saveds void APIENTRY glFogf( register __d0 GLenum pname, register __fp0 GLfloat param );
  1568.  
  1569. extern __asm __saveds void APIENTRY glFogi( register __d0 GLenum pname, register __d1 GLint param );
  1570.  
  1571. extern __asm __saveds void APIENTRY glFogfv( register __d0 GLenum pname, register __a0 const GLfloat *params );
  1572.  
  1573. extern __asm __saveds void APIENTRY glFogiv( register __d0 GLenum pname, register __a0 const GLint *params );
  1574.  
  1575.  
  1576.  
  1577. /*
  1578.  * Selection and Feedback
  1579.  */
  1580.  
  1581. extern __asm __saveds void APIENTRY glFeedbackBuffer( register __d0 GLsizei size, register __d1 GLenum type, register __a0 GLfloat *buffer );
  1582.  
  1583. extern __asm __saveds void APIENTRY glPassThrough( register __fp0 GLfloat token );
  1584.  
  1585. extern __asm __saveds void APIENTRY glSelectBuffer( register __d0 GLsizei size, register __a0 GLuint *buffer );
  1586.  
  1587. extern __asm __saveds void APIENTRY glInitNames( void );
  1588.  
  1589. extern __asm __saveds void APIENTRY glLoadName( register __d0 GLuint name );
  1590.  
  1591. extern __asm __saveds void APIENTRY glPushName( register __d0 GLuint name );
  1592.  
  1593. extern __asm __saveds void APIENTRY glPopName( void );
  1594.  
  1595.  
  1596.  
  1597. /*
  1598.  * 1.0 Extensions
  1599.  */
  1600.  
  1601. /* GL_EXT_blend_minmax */
  1602. extern __asm __saveds void APIENTRY glBlendEquationEXT( register __d0 GLenum mode );
  1603.  
  1604.  
  1605.  
  1606. /* GL_EXT_blend_color */
  1607. extern __asm __saveds void APIENTRY glBlendColorEXT( register __fp0 GLclampf red, register __fp1 GLclampf green,
  1608.                                                      register __fp2 GLclampf blue, register __fp3 GLclampf alpha );
  1609.  
  1610.  
  1611.  
  1612. /* GL_EXT_polygon_offset */
  1613. extern __asm __saveds void APIENTRY glPolygonOffsetEXT( register __fp0 GLfloat factor, register __fp1 GLfloat bias );
  1614.  
  1615.  
  1616.  
  1617. /* GL_EXT_vertex_array */
  1618.  
  1619. extern __asm __saveds void APIENTRY glVertexPointerEXT( register __d0 GLint size, register __d1 GLenum type,
  1620.                                                         register __d2 GLsizei stride,
  1621.                                                         register __d3 GLsizei count, register __a0 const GLvoid *ptr );
  1622.  
  1623. extern __asm __saveds void APIENTRY glNormalPointerEXT( register __d0 GLenum type, register __d1 GLsizei stride,
  1624.                                                         register __d2 GLsizei count, register __a0 const GLvoid *ptr );
  1625.  
  1626. extern __asm __saveds void APIENTRY glColorPointerEXT( register __d0 GLint size, register __d1 GLenum type,
  1627.                                                        register __d2 GLsizei stride,
  1628.                                                        register __d3 GLsizei count, register __a0 const GLvoid *ptr );
  1629.  
  1630. extern __asm __saveds void APIENTRY glIndexPointerEXT( register __d0 GLenum type, register __d1 GLsizei stride,
  1631.                                                        register __d2 GLsizei count, register __a0 const GLvoid *ptr );
  1632.  
  1633. extern __asm __saveds void APIENTRY glTexCoordPointerEXT( register __d0 GLint size, register __d1 GLenum type,
  1634.                                                           register __d2 GLsizei stride, register __d3 GLsizei count,
  1635.                                                           register __a0 const GLvoid *ptr );
  1636.  
  1637. extern __asm __saveds void APIENTRY glEdgeFlagPointerEXT( register __d0 GLsizei stride, register __d1 GLsizei count,
  1638.                                                           register __a0 const GLboolean *ptr );
  1639.  
  1640. extern __asm __saveds void APIENTRY glGetPointervEXT( register __d0 GLenum pname, register __a0 void **params );
  1641.  
  1642. extern __asm __saveds void APIENTRY glArrayElementEXT( register __d0 GLint i );
  1643.  
  1644. extern __asm __saveds void APIENTRY glDrawArraysEXT( register __d0 GLenum mode, register __d1 GLint first,
  1645.                                                      register __d2 GLsizei count );
  1646.  
  1647.  
  1648.  
  1649. /* GL_EXT_texture_object */
  1650.  
  1651. extern __asm __saveds void APIENTRY glGenTexturesEXT( register __d0 GLsizei n, register __a0 GLuint *textures );
  1652.  
  1653. extern __asm __saveds void APIENTRY glDeleteTexturesEXT( register __d0 GLsizei n,
  1654.                                                          register __a0 const GLuint *textures );
  1655.  
  1656. extern __asm __saveds void APIENTRY glBindTextureEXT( register __d0 GLenum target, register __d1 GLuint texture );
  1657.  
  1658. extern __asm __saveds void APIENTRY glPrioritizeTexturesEXT( register __d0 GLsizei n,
  1659.                                                              register __a0 const GLuint *textures,
  1660.                                                              register __a1 const GLclampf *priorities );
  1661.  
  1662. extern __asm __saveds GLboolean APIENTRY glAreTexturesResidentEXT( register __d0 GLsizei n,
  1663.                                                                    register __a0 const GLuint *textures,
  1664.                                                                    register __a1 GLboolean *residences );
  1665.  
  1666. extern __asm __saveds GLboolean APIENTRY glIsTextureEXT( register __d0 GLuint texture );
  1667.  
  1668.  
  1669.  
  1670. /* GL_EXT_texture3D */
  1671.  
  1672. extern __asm __saveds void APIENTRY glTexImage3DEXT( register __d0 GLenum target, register __d1 GLint level,
  1673.                                                      register __d2 GLenum internalFormat,
  1674.                                                      register __d3 GLsizei width, register __d4 GLsizei height,
  1675.                                                      register __d5 GLsizei depth, register __d6 GLint border,
  1676.                                                      register __d7 GLenum format, register __a0 GLenum type,
  1677.                                                      register __a1 const GLvoid *pixels );
  1678.  
  1679. extern __asm __saveds void APIENTRY glTexSubImage3DEXT( register __d0 GLenum target, register __d1 GLint level,
  1680.                                                         register __d2 GLint xoffset, register __d3 GLint yoffset,
  1681.                                                         register __d4 GLint zoffset, register __d5 GLsizei width,
  1682.                                                         register __d6 GLsizei height, register __d7 GLsizei depth,
  1683.                                                         register __a0 GLenum format,
  1684.                                                         register __a1 GLenum type, register __a2 const GLvoid *pixels );
  1685.  
  1686. extern __asm __saveds void APIENTRY glCopyTexSubImage3DEXT( register __d0 GLenum target, register __d1 GLint level,
  1687.                                                             register __d2 GLint xoffset, register __d3 GLint yoffset,
  1688.                                                             register __d4 GLint zoffset, register __d5 GLint x,
  1689.                                                             register __d6 GLint y, register __d7 GLsizei width,
  1690.                                                             register __a0 GLsizei height );
  1691.  
  1692.  
  1693.  
  1694. /* EXT_color_table */
  1695.  
  1696. extern __asm __saveds void APIENTRY glColorTableEXT( register __d0 GLenum target, register __d1 GLenum internalformat,
  1697.                                                      register __d2 GLsizei width, register __d3 GLenum format,
  1698.                                                      register __d4 GLenum type, register __a0 const GLvoid *table );
  1699.  
  1700. extern __asm __saveds void APIENTRY glColorSubTableEXT( register __d0 GLenum target,
  1701.                                                         register __d1 GLsizei start, register __d2 GLsizei count,
  1702.                                                         register __d3 GLenum format, register __d4 GLenum type,
  1703.                                                         register __a0 const GLvoid *data );
  1704.  
  1705. extern __asm __saveds void APIENTRY glGetColorTableEXT( register __d0 GLenum target, register __d1 GLenum format,
  1706.                                                         register __d2 GLenum type, register __a0 GLvoid *table );
  1707.  
  1708. extern __asm __saveds void APIENTRY glGetColorTableParameterfvEXT( register __d0 GLenum target,
  1709.                                                                    register __d1 GLenum pname,
  1710.                                                                    register __a0 GLfloat *params );
  1711.  
  1712. extern __asm __saveds void APIENTRY glGetColorTableParameterivEXT( register __d0 GLenum target,
  1713.                                                                    register __d1 GLenum pname,
  1714.                                                                    register __a0 GLint *params );
  1715.  
  1716.  
  1717.  
  1718. /* GL_EXT_point_parameters */
  1719. extern __asm __saveds void APIENTRY glPointParameterfEXT( register __d0 GLenum pname, register __fp0 GLfloat param );
  1720. extern __asm __saveds void APIENTRY glPointParameterfvEXT( register __d0 GLenum pname,
  1721.                                                            register __a0 const GLfloat *params );
  1722.  
  1723.  
  1724.  
  1725. /* GL_MESA_window_pos */
  1726.  
  1727. extern __asm __saveds void APIENTRY glWindowPos2iMESA( register __d0 GLint x, register __d1 GLint y );
  1728. extern __asm __saveds void APIENTRY glWindowPos2sMESA( register __d0 GLshort x, register __d1 GLshort y );
  1729. extern __asm __saveds void APIENTRY glWindowPos2fMESA( register __fp0 GLfloat x, register __fp1 GLfloat y );
  1730. extern __asm __saveds void APIENTRY glWindowPos2dMESA( register __fp0 GLdouble x, register __fp1 GLdouble y );
  1731.  
  1732. extern __asm __saveds void APIENTRY glWindowPos2ivMESA( register __a0 const GLint *p );
  1733. extern __asm __saveds void APIENTRY glWindowPos2svMESA( register __a0 const GLshort *p );
  1734. extern __asm __saveds void APIENTRY glWindowPos2fvMESA( register __a0 const GLfloat *p );
  1735. extern __asm __saveds void APIENTRY glWindowPos2dvMESA( register __a0 const GLdouble *p );
  1736.  
  1737. extern __asm __saveds void APIENTRY glWindowPos3iMESA( register __d0 GLint x, register __d1 GLint y, register __d2 GLint z );
  1738. extern __asm __saveds void APIENTRY glWindowPos3sMESA( register __d0 GLshort x, register __d1 GLshort y, register __d2 GLshort z );
  1739. extern __asm __saveds void APIENTRY glWindowPos3fMESA( register __fp0 GLfloat x, register __fp1 GLfloat y, register __fp2 GLfloat z );
  1740. extern __asm __saveds void APIENTRY glWindowPos3dMESA( register __fp0 GLdouble x, register __fp1 GLdouble y, register __fp2 GLdouble z );
  1741.  
  1742. extern __asm __saveds void APIENTRY glWindowPos3ivMESA( register __a0 const GLint *p );
  1743. extern __asm __saveds void APIENTRY glWindowPos3svMESA( register __a0 const GLshort *p );
  1744. extern __asm __saveds void APIENTRY glWindowPos3fvMESA( register __a0 const GLfloat *p );
  1745. extern __asm __saveds void APIENTRY glWindowPos3dvMESA( register __a0 const GLdouble *p );
  1746.  
  1747. extern __asm __saveds void APIENTRY glWindowPos4iMESA( register __d0 GLint x, register __d1 GLint y, register __d2 GLint z, register __d3 GLint w );
  1748. extern __asm __saveds void APIENTRY glWindowPos4sMESA( register __d0 GLshort x, register __d1 GLshort y, register __d2 GLshort z, register __d3 GLshort w );
  1749. extern __asm __saveds void APIENTRY glWindowPos4fMESA( register __fp0 GLfloat x, register __fp1 GLfloat y, register __fp2 GLfloat z, register __fp3 GLfloat w );
  1750. extern __asm __saveds void APIENTRY glWindowPos4dMESA( register __fp0 GLdouble x, register __fp1 GLdouble y, register __fp2 GLdouble z, register __fp3 GLdouble w );
  1751.  
  1752. extern __asm __saveds void APIENTRY glWindowPos4ivMESA( register __a0 const GLint *p );
  1753. extern __asm __saveds void APIENTRY glWindowPos4svMESA( register __a0 const GLshort *p );
  1754. extern __asm __saveds void APIENTRY glWindowPos4fvMESA( register __a0 const GLfloat *p );
  1755. extern __asm __saveds void APIENTRY glWindowPos4dvMESA( register __a0 const GLdouble *p );
  1756.  
  1757.  
  1758. /* GL_MESA_resize_buffers */
  1759.  
  1760. extern __asm __saveds void APIENTRY glResizeBuffersMESA( void );
  1761.  
  1762.  
  1763. #ifndef MAKE_MESAMAINLIB
  1764.  
  1765. extern __asm __saveds void APIENTRY STUBglOrtho(register __fp0 GLdouble left, register __fp1 GLdouble right, register __fp2 GLdouble bottom, register __fp3 GLdouble top, register __fp4 GLdouble near_val, register __fp5 GLdouble far_val, register __a0 struct Library *mesamainBase);
  1766. #define glOrtho(left,right,bottom,top,near_val,far_val)    STUBglOrtho(left,right,bottom,top,near_val,far_val,mesamainBase)
  1767.  
  1768. extern __asm __saveds void APIENTRY STUBglFrustum(register __fp0 GLdouble left, register __fp1 GLdouble right, register __fp2 GLdouble bottom, register __fp3 GLdouble top, register __fp4 GLdouble near_val, register __fp5 GLdouble far_val, register __a0 struct Library *mesamainBase);
  1769. #define glFrustum(left,right,bottom,top,near_val,far_val) STUBglFrustum(left,right,bottom,top,near_val,far_val,mesamainBase)
  1770.  
  1771. extern __asm __saveds void APIENTRY STUBglBitmap(register __d0 GLsizei width, register __d1 GLsizei height, register __fp0 GLfloat xorig, register __fp1 GLfloat yorig, register __fp2 GLfloat xmove, register __fp3 GLfloat ymove, register __a0 const GLubyte *bitmap, register __a1 struct Library *mesamainBase);
  1772. #define glBitmap(width,height,xorig,yorig,xmove,ymove,bitmap) STUBglBitmap(width,height,xorig,yorig,xmove,ymove,bitmap,mesamainBase)
  1773.  
  1774. extern __asm __saveds void APIENTRY STUBglMap1d(register __d0 GLenum target, register __fp0 GLdouble u1, register __fp1 GLdouble u2, register __d1 GLint stride, register __d2 GLint order, register __a0 const GLdouble *points, register __a1 struct Library *mesamainBase);
  1775. #define glMap1d(target,u1,u2,stride,order,points) STUBglMap1d(target,u1,u2,stride,order,points,mesamainBase)
  1776.  
  1777. extern __asm __saveds void APIENTRY STUBglMap1f(register __d0 GLenum target, register __fp0 GLfloat u1, register __fp1 GLfloat u2, register __d1 GLint stride, register __d2 GLint order, register __a0 const GLfloat *points, register __a1 struct Library *mesamainBase);
  1778. #define glMap1f(target,u1,u2,stride,order,points) STUBglMap1f(target,u1,u2,stride,order,points,mesamainBase)
  1779.  
  1780. extern __asm __saveds void APIENTRY STUBglMap2d(register __d0 GLenum target, register __fp0 GLdouble u1, register __fp1 GLdouble u2, register __d1 GLint ustride, register __d2 GLint uorder, register __fp2 GLdouble v1, register __fp3 GLdouble v2, register __d3 GLint vstride, register __d4 GLint vorder, register __a0 const GLdouble *points, register __a1 struct Library *mesamainBase);
  1781. #define glMap2d(target,u1,u2,ustride,uorder,v1,v2,vstride,vorder,points) STUBglMap2d(target,u1,u2,ustride,uorder,v1,v2,vstride,vorder,points,mesamainBase)
  1782.  
  1783. extern __asm __saveds void APIENTRY STUBglMap2f(register __d0 GLenum target, register __fp0 GLfloat u1, register __fp1 GLfloat u2, register __d1 GLint ustride, register __d2 GLint uorder, register __fp2 GLfloat v1, register __fp3 GLfloat v2, register __d3 GLint vstride, register __d4 GLint vorder, register __a0 const GLfloat *points, register __a1 struct Library *mesamainBase);
  1784. #define glMap2f(target,u1,u2,ustride,uorder,v1,v2,vstride,vorder,points) STUBglMap2f(target,u1,u2,ustride,uorder,v1,v2,vstride,vorder,points,mesamainBase)
  1785.  
  1786. extern __asm __saveds void APIENTRY STUBglMapGrid2d(register __d0 GLint un, register __fp0 GLdouble u1, register __fp1 GLdouble u2, register __d1 GLint vn, register __fp2 GLdouble v1, register __fp3 GLdouble v2, register __a0 struct Library *mesamainBase);
  1787. #define glMapGrid2d(un,u1,u2,vn,v1,v2) STUBglMapGrid2d(un,u1,u2,vn,v1,v2,mesamainBase)
  1788.  
  1789. extern __asm __saveds void APIENTRY STUBglMapGrid2f(register __d0 GLint un, register __fp0 GLfloat u1, register __fp1 GLfloat u2, register __d1 GLint vn, register __fp2 GLfloat v1, register __fp3 GLfloat v2, register __a0 struct Library *mesamainBase);
  1790. #define glMapGrid2f(un,u1,u2,vn,v1,v2) STUBglMapGrid2f(un,u1,u2,vn,v1,v2,mesamainBase)
  1791.  
  1792. #endif
  1793.  
  1794. #if defined(__BEOS__) || defined(__QUICKDRAW__)
  1795. #pragma export off
  1796. #endif
  1797.  
  1798.  
  1799. /*
  1800.  * Compile-time tests for extensions:
  1801.  */
  1802. #define GL_EXT_blend_color        1
  1803. #define GL_EXT_blend_logic_op        1
  1804. #define GL_EXT_blend_minmax        1
  1805. #define GL_EXT_blend_subtract        1
  1806. #define GL_EXT_polygon_offset        1
  1807. #define GL_EXT_vertex_array        1
  1808. #define GL_EXT_texture_object        1
  1809. #define GL_EXT_texture3D        1
  1810. #define GL_EXT_paletted_texture        1
  1811. #define GL_EXT_shared_texture_palette    1
  1812. #define GL_EXT_point_parameters        1
  1813. #define GL_MESA_window_pos        1
  1814. #define GL_MESA_resize_buffers        1
  1815. /*#define GL_SGIS_texture_lod        1*/
  1816.  
  1817.  
  1818. #ifdef macintosh
  1819.     #pragma enumsalwaysint reset
  1820.     #if PRAGMA_IMPORT_SUPPORTED
  1821.     #pragma import off
  1822.     #endif
  1823. #endif
  1824.  
  1825.  
  1826. #ifdef __cplusplus
  1827. }
  1828. #endif
  1829.  
  1830. #endif
  1831.